├── .dockerignore
├── .editorconfig
├── .eslintignore
├── .eslintrc
├── .eslintrc.json
├── .gitattributes
├── .github
└── workflows
│ ├── deploy.yml
│ ├── semgrep.yaml
│ └── test.yml
├── .gitignore
├── .prettierignore
├── .prettierrc
├── .semgrepignore
├── .yarn
└── releases
│ └── yarn-3.3.1.cjs
├── .yarnrc.yml
├── CODEOWNERS
├── LICENSE.md
├── Makefile
├── README.md
├── apps
├── .gitkeep
├── dashboard
│ ├── VERSION
│ ├── browserslist
│ ├── jest.config.js
│ ├── project.json
│ ├── src
│ │ ├── _variables.scss
│ │ ├── app
│ │ │ ├── account
│ │ │ │ ├── account-arag
│ │ │ │ │ ├── account-arag.component.ts
│ │ │ │ │ ├── arag-list
│ │ │ │ │ │ ├── arag-list.component.html
│ │ │ │ │ │ ├── arag-list.component.scss
│ │ │ │ │ │ └── arag-list.component.ts
│ │ │ │ │ └── create-arag
│ │ │ │ │ │ ├── create-arag.component.html
│ │ │ │ │ │ ├── create-arag.component.scss
│ │ │ │ │ │ └── create-arag.component.ts
│ │ │ │ ├── account-home
│ │ │ │ │ ├── account-home.component.html
│ │ │ │ │ ├── account-home.component.scss
│ │ │ │ │ └── account-home.component.ts
│ │ │ │ ├── account-kbs
│ │ │ │ │ ├── account-kbs.component.ts
│ │ │ │ │ ├── account-kbs.service.ts
│ │ │ │ │ ├── kb-list
│ │ │ │ │ │ ├── kb-list.component.html
│ │ │ │ │ │ ├── kb-list.component.scss
│ │ │ │ │ │ └── kb-list.component.ts
│ │ │ │ │ └── users-dialog
│ │ │ │ │ │ ├── users-dialog.component.html
│ │ │ │ │ │ ├── users-dialog.component.scss
│ │ │ │ │ │ └── users-dialog.component.ts
│ │ │ │ ├── account-manage
│ │ │ │ │ ├── account-delete
│ │ │ │ │ │ ├── account-delete.component.html
│ │ │ │ │ │ ├── account-delete.component.scss
│ │ │ │ │ │ └── account-delete.component.ts
│ │ │ │ │ ├── account-manage.component.html
│ │ │ │ │ ├── account-manage.component.scss
│ │ │ │ │ └── account-manage.component.ts
│ │ │ │ ├── account-models
│ │ │ │ │ ├── account-models.component.html
│ │ │ │ │ ├── account-models.component.scss
│ │ │ │ │ └── account-models.component.ts
│ │ │ │ ├── account-nua
│ │ │ │ │ ├── account-nua.component.html
│ │ │ │ │ ├── account-nua.component.scss
│ │ │ │ │ ├── account-nua.component.ts
│ │ │ │ │ ├── account-nua.service.ts
│ │ │ │ │ ├── client-dialog
│ │ │ │ │ │ ├── client-dialog.component.html
│ │ │ │ │ │ ├── client-dialog.component.scss
│ │ │ │ │ │ └── client-dialog.component.ts
│ │ │ │ │ └── nua-activity
│ │ │ │ │ │ ├── nua-activity.component.html
│ │ │ │ │ │ ├── nua-activity.component.scss
│ │ │ │ │ │ ├── nua-activity.component.ts
│ │ │ │ │ │ └── nua-activity.service.ts
│ │ │ │ ├── account-status
│ │ │ │ │ ├── account-status.component.html
│ │ │ │ │ ├── account-status.component.scss
│ │ │ │ │ └── account-status.component.ts
│ │ │ │ ├── account-users
│ │ │ │ │ ├── account-users.component.html
│ │ │ │ │ ├── account-users.component.scss
│ │ │ │ │ └── account-users.component.ts
│ │ │ │ ├── account.module.ts
│ │ │ │ ├── billing
│ │ │ │ │ ├── billing.component.html
│ │ │ │ │ ├── billing.component.scss
│ │ │ │ │ ├── billing.component.ts
│ │ │ │ │ ├── billing.module.ts
│ │ │ │ │ ├── checkout
│ │ │ │ │ │ ├── checkout.component.html
│ │ │ │ │ │ ├── checkout.component.scss
│ │ │ │ │ │ └── checkout.component.ts
│ │ │ │ │ ├── features
│ │ │ │ │ │ ├── features.component.html
│ │ │ │ │ │ ├── features.component.scss
│ │ │ │ │ │ └── features.component.ts
│ │ │ │ │ ├── history
│ │ │ │ │ │ ├── history.component.html
│ │ │ │ │ │ ├── history.component.scss
│ │ │ │ │ │ └── history.component.ts
│ │ │ │ │ ├── my-subscription
│ │ │ │ │ │ ├── my-subscription.component.html
│ │ │ │ │ │ ├── my-subscription.component.scss
│ │ │ │ │ │ ├── my-subscription.component.ts
│ │ │ │ │ │ ├── unsubscribe.component.html
│ │ │ │ │ │ ├── unsubscribe.component.scss
│ │ │ │ │ │ └── unsubscribe.component.ts
│ │ │ │ │ ├── redirect.component.ts
│ │ │ │ │ ├── review
│ │ │ │ │ │ ├── review.component.html
│ │ │ │ │ │ ├── review.component.scss
│ │ │ │ │ │ └── review.component.ts
│ │ │ │ │ ├── subscription.service.ts
│ │ │ │ │ ├── subscriptions
│ │ │ │ │ │ ├── aws-subscription
│ │ │ │ │ │ │ ├── aws-subscription.component.html
│ │ │ │ │ │ │ ├── aws-subscription.component.scss
│ │ │ │ │ │ │ └── aws-subscription.component.ts
│ │ │ │ │ │ ├── manual-subscription
│ │ │ │ │ │ │ ├── manual-subscription.component.html
│ │ │ │ │ │ │ ├── manual-subscription.component.scss
│ │ │ │ │ │ │ └── manual-subscription.component.ts
│ │ │ │ │ │ ├── subscriptions.component.html
│ │ │ │ │ │ ├── subscriptions.component.scss
│ │ │ │ │ │ └── subscriptions.component.ts
│ │ │ │ │ ├── usage
│ │ │ │ │ │ ├── budget.component.html
│ │ │ │ │ │ ├── budget.component.scss
│ │ │ │ │ │ ├── budget.component.ts
│ │ │ │ │ │ ├── usage-table.component.html
│ │ │ │ │ │ ├── usage-table.component.scss
│ │ │ │ │ │ ├── usage-table.component.ts
│ │ │ │ │ │ ├── usage.component.html
│ │ │ │ │ │ ├── usage.component.scss
│ │ │ │ │ │ └── usage.component.ts
│ │ │ │ │ └── utils.ts
│ │ │ │ ├── invite-collaborators-modal
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── invite-collaborators-modal.component.html
│ │ │ │ │ ├── invite-collaborators-modal.component.scss
│ │ │ │ │ └── invite-collaborators-modal.component.ts
│ │ │ │ ├── metrics.service.ts
│ │ │ │ └── nuclia-tokens
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── nuclia-tokens.component.html
│ │ │ │ │ ├── nuclia-tokens.component.scss
│ │ │ │ │ └── nuclia-tokens.component.ts
│ │ │ ├── activity
│ │ │ │ ├── activity-download.component.html
│ │ │ │ ├── activity-download.component.scss
│ │ │ │ ├── activity-download.component.ts
│ │ │ │ ├── activity.module.ts
│ │ │ │ ├── activity.service.ts
│ │ │ │ ├── log-table-modal.component.scss
│ │ │ │ ├── log-table-modal.component.ts
│ │ │ │ ├── log-table.component.html
│ │ │ │ ├── log-table.component.scss
│ │ │ │ ├── log-table.component.ts
│ │ │ │ └── log.models.ts
│ │ │ ├── app-routing.module.ts
│ │ │ ├── app-title.strategy.ts
│ │ │ ├── app.component.html
│ │ │ ├── app.component.scss
│ │ │ ├── app.component.ts
│ │ │ ├── app.module.ts
│ │ │ ├── farewell
│ │ │ │ ├── farewell.component.html
│ │ │ │ ├── farewell.component.scss
│ │ │ │ ├── farewell.component.ts
│ │ │ │ ├── farewell.module.ts
│ │ │ │ ├── feedback.component.html
│ │ │ │ ├── feedback.component.scss
│ │ │ │ └── feedback.component.ts
│ │ │ ├── knowledge-box
│ │ │ │ ├── index.ts
│ │ │ │ ├── knowledge-box-home
│ │ │ │ │ ├── kb-usage
│ │ │ │ │ │ ├── usage-charts.component.html
│ │ │ │ │ │ ├── usage-charts.component.ts
│ │ │ │ │ │ ├── usage-modal.component.html
│ │ │ │ │ │ ├── usage-modal.component.scss
│ │ │ │ │ │ └── usage-modal.component.ts
│ │ │ │ │ ├── knowledge-box-home.component.html
│ │ │ │ │ ├── knowledge-box-home.component.scss
│ │ │ │ │ ├── knowledge-box-home.component.spec.ts
│ │ │ │ │ ├── knowledge-box-home.component.ts
│ │ │ │ │ └── survey
│ │ │ │ │ │ ├── survey.component.html
│ │ │ │ │ │ └── survey.component.ts
│ │ │ │ ├── knowledge-box-keys
│ │ │ │ │ ├── knowledge-box-keys.component.html
│ │ │ │ │ ├── knowledge-box-keys.component.scss
│ │ │ │ │ └── knowledge-box-keys.component.ts
│ │ │ │ ├── knowledge-box-users
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── knowledge-box-users.component.scss
│ │ │ │ │ ├── knowledge-box-users.component.ts
│ │ │ │ │ └── users-manage
│ │ │ │ │ │ ├── users-manage.component.html
│ │ │ │ │ │ ├── users-manage.component.scss
│ │ │ │ │ │ ├── users-manage.component.ts
│ │ │ │ │ │ ├── users-manage.module.ts
│ │ │ │ │ │ └── users-manage.service.ts
│ │ │ │ ├── knowledge-box.module.ts
│ │ │ │ ├── knowledge-box
│ │ │ │ │ ├── knowledge-box.component.spec.ts
│ │ │ │ │ └── knowledge-box.component.ts
│ │ │ │ ├── service-access
│ │ │ │ │ ├── service-access.component.html
│ │ │ │ │ ├── service-access.component.scss
│ │ │ │ │ └── service-access.component.ts
│ │ │ │ └── utils.ts
│ │ │ ├── lazy-user.module.ts
│ │ │ ├── onboarding
│ │ │ │ ├── aws-onboarding
│ │ │ │ │ ├── aws-onboarding.component.html
│ │ │ │ │ ├── aws-onboarding.component.scss
│ │ │ │ │ ├── aws-onboarding.component.ts
│ │ │ │ │ ├── aws.guard.ts
│ │ │ │ │ ├── step1-budget
│ │ │ │ │ │ ├── step1-budget.component.html
│ │ │ │ │ │ └── step1-budget.component.ts
│ │ │ │ │ └── step2
│ │ │ │ │ │ ├── step2.component.html
│ │ │ │ │ │ └── step2.component.ts
│ │ │ │ ├── getting-started
│ │ │ │ │ ├── getting-started.component.html
│ │ │ │ │ ├── getting-started.component.scss
│ │ │ │ │ ├── getting-started.component.ts
│ │ │ │ │ ├── getting-started.models.ts
│ │ │ │ │ ├── intro
│ │ │ │ │ │ ├── intro.component.html
│ │ │ │ │ │ └── intro.component.ts
│ │ │ │ │ ├── processing
│ │ │ │ │ │ ├── processing.component.html
│ │ │ │ │ │ ├── processing.component.scss
│ │ │ │ │ │ └── processing.component.ts
│ │ │ │ │ ├── upload-list
│ │ │ │ │ │ ├── upload-list.component.html
│ │ │ │ │ │ ├── upload-list.component.scss
│ │ │ │ │ │ └── upload-list.component.ts
│ │ │ │ │ └── upload
│ │ │ │ │ │ ├── upload.component.html
│ │ │ │ │ │ ├── upload.component.scss
│ │ │ │ │ │ └── upload.component.ts
│ │ │ │ ├── invite
│ │ │ │ │ ├── invite.component.html
│ │ │ │ │ ├── invite.component.scss
│ │ │ │ │ ├── invite.component.ts
│ │ │ │ │ ├── invite.guard.ts
│ │ │ │ │ └── invite.module.ts
│ │ │ │ └── welcome-in-existing-kb
│ │ │ │ │ ├── welcome-in-existing-kb.component.html
│ │ │ │ │ ├── welcome-in-existing-kb.component.scss
│ │ │ │ │ └── welcome-in-existing-kb.component.ts
│ │ │ ├── redirect
│ │ │ │ ├── redirect.component.html
│ │ │ │ ├── redirect.component.scss
│ │ │ │ ├── redirect.component.ts
│ │ │ │ └── redirect.module.ts
│ │ │ ├── styles
│ │ │ │ └── js-variables.ts
│ │ │ ├── synonyms
│ │ │ │ ├── synonyms.component.html
│ │ │ │ ├── synonyms.component.scss
│ │ │ │ ├── synonyms.component.spec.ts
│ │ │ │ ├── synonyms.component.ts
│ │ │ │ ├── synonyms.module.ts
│ │ │ │ ├── synonyms.service.spec.ts
│ │ │ │ └── synonyms.service.ts
│ │ │ └── test-page
│ │ │ │ ├── test-page.component.html
│ │ │ │ ├── test-page.component.scss
│ │ │ │ └── test-page.component.ts
│ │ ├── assets
│ │ │ ├── favicon.ico
│ │ │ ├── images
│ │ │ │ ├── background.jpg
│ │ │ │ └── stripe-logo.svg
│ │ │ ├── overrides.css
│ │ │ └── splash-screen.css
│ │ ├── environments
│ │ │ ├── environment.prod.ts
│ │ │ └── environment.ts
│ │ ├── environments_config
│ │ │ ├── local-prod
│ │ │ │ └── app-config.json
│ │ │ └── production
│ │ │ │ └── app-config.json
│ │ ├── index.html
│ │ ├── main.ts
│ │ ├── manifest.webmanifest
│ │ ├── ngsw-config.json
│ │ ├── polyfills.ts
│ │ ├── styles.scss
│ │ └── test-setup.ts
│ ├── tsconfig.app.json
│ ├── tsconfig.editor.json
│ ├── tsconfig.json
│ └── tsconfig.spec.json
├── manager-v2
│ ├── .eslintrc.json
│ ├── VERSION
│ ├── jest.config.ts
│ ├── project.json
│ ├── src
│ │ ├── _variables.scss
│ │ ├── app
│ │ │ ├── app-layout
│ │ │ │ ├── app-layout.component.html
│ │ │ │ ├── app-layout.component.scss
│ │ │ │ ├── app-layout.component.spec.ts
│ │ │ │ └── app-layout.component.ts
│ │ │ ├── app.component.html
│ │ │ ├── app.component.scss
│ │ │ ├── app.component.spec.ts
│ │ │ ├── app.component.ts
│ │ │ ├── app.module.ts
│ │ │ ├── app.routes.ts
│ │ │ ├── manage-accounts
│ │ │ │ ├── account-details
│ │ │ │ │ ├── account-details.component.html
│ │ │ │ │ ├── account-details.component.scss
│ │ │ │ │ ├── account-details.component.spec.ts
│ │ │ │ │ ├── account-details.component.ts
│ │ │ │ │ ├── account-details.store.ts
│ │ │ │ │ ├── blocked-features
│ │ │ │ │ │ ├── blocked-features.component.html
│ │ │ │ │ │ ├── blocked-features.component.scss
│ │ │ │ │ │ ├── blocked-features.component.spec.ts
│ │ │ │ │ │ ├── blocked-features.component.ts
│ │ │ │ │ │ └── feature-name.pipe.ts
│ │ │ │ │ ├── configuration
│ │ │ │ │ │ ├── configuration.component.html
│ │ │ │ │ │ ├── configuration.component.scss
│ │ │ │ │ │ ├── configuration.component.spec.ts
│ │ │ │ │ │ └── configuration.component.ts
│ │ │ │ │ ├── kb-details
│ │ │ │ │ │ ├── kb-details.component.html
│ │ │ │ │ │ ├── kb-details.component.scss
│ │ │ │ │ │ ├── kb-details.component.spec.ts
│ │ │ │ │ │ └── kb-details.component.ts
│ │ │ │ │ ├── knowledge-boxes
│ │ │ │ │ │ ├── knowledge-boxes.component.html
│ │ │ │ │ │ ├── knowledge-boxes.component.scss
│ │ │ │ │ │ ├── knowledge-boxes.component.spec.ts
│ │ │ │ │ │ └── knowledge-boxes.component.ts
│ │ │ │ │ ├── limits
│ │ │ │ │ │ ├── limits.component.html
│ │ │ │ │ │ ├── limits.component.scss
│ │ │ │ │ │ ├── limits.component.spec.ts
│ │ │ │ │ │ └── limits.component.ts
│ │ │ │ │ ├── models
│ │ │ │ │ │ ├── add-model
│ │ │ │ │ │ │ ├── add-model.component.html
│ │ │ │ │ │ │ └── add-model.component.ts
│ │ │ │ │ │ ├── model-details
│ │ │ │ │ │ │ ├── model-details.component.html
│ │ │ │ │ │ │ └── model-details.component.ts
│ │ │ │ │ │ ├── models.component.html
│ │ │ │ │ │ ├── models.component.scss
│ │ │ │ │ │ └── models.component.ts
│ │ │ │ │ ├── payment-links
│ │ │ │ │ │ ├── payment-links.component.html
│ │ │ │ │ │ ├── payment-links.component.scss
│ │ │ │ │ │ ├── payment-links.component.spec.ts
│ │ │ │ │ │ └── payment-links.component.ts
│ │ │ │ │ ├── token-consumption
│ │ │ │ │ │ ├── token-consumption.component.html
│ │ │ │ │ │ ├── token-consumption.component.scss
│ │ │ │ │ │ ├── token-consumption.component.ts
│ │ │ │ │ │ └── token-consumption.models.ts
│ │ │ │ │ └── users
│ │ │ │ │ │ ├── users.component.html
│ │ │ │ │ │ ├── users.component.scss
│ │ │ │ │ │ ├── users.component.spec.ts
│ │ │ │ │ │ └── users.component.ts
│ │ │ │ ├── account-list
│ │ │ │ │ ├── account-list.component.html
│ │ │ │ │ ├── account-list.component.spec.ts
│ │ │ │ │ └── account-list.component.ts
│ │ │ │ ├── account-ui.models.ts
│ │ │ │ ├── account.service.ts
│ │ │ │ ├── add-account
│ │ │ │ │ ├── add-account.component.html
│ │ │ │ │ └── add-account.component.ts
│ │ │ │ ├── form-footer
│ │ │ │ │ ├── form-footer.component.html
│ │ │ │ │ ├── form-footer.component.scss
│ │ │ │ │ ├── form-footer.component.spec.ts
│ │ │ │ │ └── form-footer.component.ts
│ │ │ │ ├── global-account.models.ts
│ │ │ │ ├── global-account.service.ts
│ │ │ │ ├── manage-accounts.component.ts
│ │ │ │ ├── manage-accounts.module.ts
│ │ │ │ ├── regional-account.models.ts
│ │ │ │ └── regional-account.service.ts
│ │ │ ├── manage-users
│ │ │ │ ├── add-user
│ │ │ │ │ ├── add-user.component.html
│ │ │ │ │ └── add-user.component.ts
│ │ │ │ ├── manage-users.component.ts
│ │ │ │ ├── manage-users.module.ts
│ │ │ │ ├── user-details
│ │ │ │ │ ├── user-details.component.html
│ │ │ │ │ ├── user-details.component.scss
│ │ │ │ │ ├── user-details.component.spec.ts
│ │ │ │ │ └── user-details.component.ts
│ │ │ │ ├── user-list
│ │ │ │ │ ├── user-list.component.html
│ │ │ │ │ ├── user-list.component.spec.ts
│ │ │ │ │ └── user-list.component.ts
│ │ │ │ ├── user.models.ts
│ │ │ │ ├── user.service.spec.ts
│ │ │ │ └── user.service.ts
│ │ │ ├── manage-zones
│ │ │ │ ├── manage-zones.component.ts
│ │ │ │ ├── manage-zones.module.ts
│ │ │ │ ├── zone-details
│ │ │ │ │ ├── zone-details.component.html
│ │ │ │ │ ├── zone-details.component.spec.ts
│ │ │ │ │ └── zone-details.component.ts
│ │ │ │ ├── zone-list
│ │ │ │ │ ├── zone-list.component.html
│ │ │ │ │ ├── zone-list.component.spec.ts
│ │ │ │ │ └── zone-list.component.ts
│ │ │ │ ├── zone.models.ts
│ │ │ │ └── zone.service.ts
│ │ │ └── manager.store.ts
│ │ ├── assets
│ │ │ ├── .gitkeep
│ │ │ ├── background_manager.jpg
│ │ │ └── favicon.ico
│ │ ├── environments
│ │ │ ├── environment.prod.ts
│ │ │ └── environment.ts
│ │ ├── environments_config
│ │ │ └── production
│ │ │ │ └── app-config.json
│ │ ├── index.html
│ │ ├── main.ts
│ │ ├── styles.scss
│ │ └── test-setup.ts
│ ├── tsconfig.app.json
│ ├── tsconfig.editor.json
│ ├── tsconfig.json
│ └── tsconfig.spec.json
├── nucliadb-admin
│ ├── .eslintrc.json
│ ├── VERSION
│ ├── jest.config.ts
│ ├── project.json
│ ├── src
│ │ ├── _variables.scss
│ │ ├── app
│ │ │ ├── app-routing.ts
│ │ │ ├── app-title.strategy.ts
│ │ │ ├── app.component.html
│ │ │ ├── app.component.scss
│ │ │ ├── app.component.spec.ts
│ │ │ ├── app.component.ts
│ │ │ ├── app.module.ts
│ │ │ └── home
│ │ │ │ ├── home-page.component.html
│ │ │ │ ├── home-page.component.scss
│ │ │ │ ├── home-page.component.ts
│ │ │ │ └── main-container
│ │ │ │ └── main-container.component.ts
│ │ ├── assets
│ │ │ └── .gitkeep
│ │ ├── environments
│ │ │ ├── environment.prod.ts
│ │ │ └── environment.ts
│ │ ├── environments_config
│ │ │ └── production
│ │ │ │ └── app-config.json
│ │ ├── index.html
│ │ ├── main.ts
│ │ ├── polyfills.ts
│ │ ├── styles.scss
│ │ └── test-setup.ts
│ ├── tsconfig.app.json
│ ├── tsconfig.editor.json
│ ├── tsconfig.json
│ └── tsconfig.spec.json
├── search-widget-demo
│ ├── .gitignore
│ ├── README.md
│ ├── index.html
│ ├── package.json
│ ├── project.json
│ ├── src
│ │ ├── App.svelte
│ │ ├── main.ts
│ │ └── vite-env.d.ts
│ ├── svelte.config.js
│ ├── tsconfig.json
│ ├── tsconfig.node.json
│ └── vite.config.ts
└── sistema-demo
│ ├── .eslintrc.json
│ ├── jest.config.js
│ ├── project.json
│ ├── src
│ ├── _variables.scss
│ ├── app
│ │ ├── app-routing.module.ts
│ │ ├── app.component.ts
│ │ ├── app.module.ts
│ │ ├── sistema-pages
│ │ │ ├── index.ts
│ │ │ ├── pastanaga-pages-override
│ │ │ │ ├── index.ts
│ │ │ │ ├── sistema-confirmation-dialog
│ │ │ │ │ ├── sistema-confirmation-dialog.component.html
│ │ │ │ │ └── sistema-confirmation-dialog.component.ts
│ │ │ │ ├── sistema-icons
│ │ │ │ │ └── sistema-icons.component.ts
│ │ │ │ ├── sistema-modal
│ │ │ │ │ ├── dialog-example
│ │ │ │ │ │ ├── dialog-example.component.html
│ │ │ │ │ │ └── dialog-example.component.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── modal-example
│ │ │ │ │ │ ├── modal-example.component.html
│ │ │ │ │ │ ├── modal-example.component.scss
│ │ │ │ │ │ └── modal-example.component.ts
│ │ │ │ │ ├── sistema-modal.component.html
│ │ │ │ │ ├── sistema-modal.component.scss
│ │ │ │ │ └── sistema-modal.component.ts
│ │ │ │ ├── sistema-palette
│ │ │ │ │ ├── sistema-palette.component.html
│ │ │ │ │ ├── sistema-palette.component.scss
│ │ │ │ │ └── sistema-palette.component.ts
│ │ │ │ ├── sistema-scrollbar
│ │ │ │ │ ├── sistema-scrollbar.component.html
│ │ │ │ │ ├── sistema-scrollbar.component.scss
│ │ │ │ │ └── sistema-scrollbar.component.ts
│ │ │ │ └── sistema-toasts
│ │ │ │ │ ├── sistema-toast.component.html
│ │ │ │ │ └── sistema-toast.component.ts
│ │ │ ├── sistema-back-button
│ │ │ │ ├── sistema-back-button.component.html
│ │ │ │ └── sistema-back-button.component.ts
│ │ │ ├── sistema-badge
│ │ │ │ ├── sistema-badge.component.html
│ │ │ │ ├── sistema-badge.component.scss
│ │ │ │ └── sistema-badge.component.ts
│ │ │ ├── sistema-button-mini
│ │ │ │ ├── sistema-button-mini.component.html
│ │ │ │ └── sistema-button-mini.component.ts
│ │ │ ├── sistema-cards
│ │ │ │ ├── sistema-action-card.component.html
│ │ │ │ ├── sistema-action-card.component.scss
│ │ │ │ ├── sistema-action-card.component.ts
│ │ │ │ ├── sistema-info-card.component.html
│ │ │ │ └── sistema-info-card.component.ts
│ │ │ ├── sistema-dropdown-button
│ │ │ │ ├── sistema-dropdown-button.component.html
│ │ │ │ ├── sistema-dropdown-button.component.scss
│ │ │ │ └── sistema-dropdown-button.component.ts
│ │ │ ├── sistema-expandable-textarea
│ │ │ │ ├── sistema-expandable-textarea.component.html
│ │ │ │ └── sistema-expandable-textarea.component.ts
│ │ │ ├── sistema-folder-tree
│ │ │ │ ├── sistema-folder-tree.component.html
│ │ │ │ └── sistema-folder-tree.component.ts
│ │ │ ├── sistema-label
│ │ │ │ ├── sistema-label.component.html
│ │ │ │ └── sistema-label.component.ts
│ │ │ ├── sistema-pages.module.ts
│ │ │ ├── sistema-password-input
│ │ │ │ ├── sistema-password-input.component.html
│ │ │ │ ├── sistema-password-input.component.scss
│ │ │ │ └── sistema-password-input.component.ts
│ │ │ ├── sistema-search-input
│ │ │ │ ├── sistema-search-input.component.html
│ │ │ │ ├── sistema-search-input.component.scss
│ │ │ │ └── sistema-search-input.component.ts
│ │ │ ├── sistema-segmented-buttons
│ │ │ │ ├── sistema-segmented-buttons.component.html
│ │ │ │ └── sistema-segmented-buttons.component.ts
│ │ │ ├── sistema-spinner
│ │ │ │ ├── sistema-spinner.component.html
│ │ │ │ └── sistema-spinner.component.ts
│ │ │ ├── sistema-sticky-footer
│ │ │ │ ├── sistema-sticky-footer.component.html
│ │ │ │ └── sistema-sticky-footer.component.ts
│ │ │ └── sistema-two-columns-configuration-item
│ │ │ │ ├── sistema-two-columns-configuration-item.component.html
│ │ │ │ └── sistema-two-columns-configuration-item.component.ts
│ │ └── welcome-page
│ │ │ ├── welcome-page.component.html
│ │ │ ├── welcome-page.component.ts
│ │ │ └── welcome-page.module.ts
│ ├── assets
│ │ ├── .gitkeep
│ │ ├── glyphs.ts
│ │ └── ninja.svg
│ ├── demos
│ │ └── speech.html
│ ├── e2e
│ │ ├── ask.html
│ │ ├── citations.html
│ │ ├── dev
│ │ │ ├── ask.html
│ │ │ ├── citations.html
│ │ │ ├── find.html
│ │ │ └── search.html
│ │ ├── find.html
│ │ ├── prod
│ │ │ ├── ask-europe.html
│ │ │ ├── ask-usa.html
│ │ │ ├── citations-europe.html
│ │ │ ├── citations-usa.html
│ │ │ ├── find-europe.html
│ │ │ ├── find-usa.html
│ │ │ ├── search-europe.html
│ │ │ └── search-usa.html
│ │ ├── search.html
│ │ └── small.html
│ ├── environments
│ │ ├── environment.prod.ts
│ │ └── environment.ts
│ ├── favicon.ico
│ ├── index.html
│ ├── main.ts
│ ├── pastanaga-component-overrides.scss
│ ├── pastanaga-core-overrides.scss
│ ├── polyfills.ts
│ ├── styles.scss
│ └── test-setup.ts
│ ├── tsconfig.app.json
│ ├── tsconfig.editor.json
│ ├── tsconfig.json
│ └── tsconfig.spec.json
├── charts
├── app
│ ├── Chart.yaml
│ ├── templates
│ │ ├── app.cm.yaml
│ │ ├── app.deploy.yaml
│ │ ├── app.pdb.yaml
│ │ ├── app.svc.yaml
│ │ └── app.vs.yaml
│ └── values.yaml
└── manager
│ ├── Chart.yaml
│ ├── templates
│ ├── manager.cm.yaml
│ ├── manager.deploy.yaml
│ ├── manager.pdb.yaml
│ ├── manager.svc.yaml
│ └── manager.vs.yaml
│ └── values.yaml
├── cypress.json
├── decorate-angular-cli.js
├── docker
├── 30-environment-app.sh
├── 30-environment-manager.sh
└── Dockerfile
├── jest.config.js
├── jest.preset.js
├── libs
├── .gitkeep
├── chrome-ext
│ ├── README.md
│ ├── jest.config.ts
│ ├── project.json
│ ├── src
│ │ └── lib
│ │ │ ├── api.js
│ │ │ ├── background.js
│ │ │ ├── icons
│ │ │ ├── error.png
│ │ │ ├── icon128.png
│ │ │ ├── icon16.png
│ │ │ ├── icon32.png
│ │ │ └── icon48.png
│ │ │ ├── logo.svg
│ │ │ ├── manifest.json
│ │ │ ├── options
│ │ │ ├── options.html
│ │ │ └── options.js
│ │ │ ├── style.css
│ │ │ ├── utils.js
│ │ │ └── youtube
│ │ │ ├── selection.html
│ │ │ └── selection.js
│ └── tsconfig.spec.json
├── common
│ ├── README.md
│ ├── common.babel
│ ├── jest.config.js
│ ├── project.json
│ ├── src
│ │ ├── assets
│ │ │ └── i18n
│ │ │ │ ├── ca.json
│ │ │ │ ├── en.json
│ │ │ │ ├── es.json
│ │ │ │ └── fr.json
│ │ ├── index.ts
│ │ ├── lib
│ │ │ ├── ai-models
│ │ │ │ ├── ai-models.component.html
│ │ │ │ ├── ai-models.component.scss
│ │ │ │ ├── ai-models.component.ts
│ │ │ │ ├── ai-models.utils.ts
│ │ │ │ ├── anonymization
│ │ │ │ │ ├── anonymization.component.html
│ │ │ │ │ └── anonymization.component.ts
│ │ │ │ ├── answer-generation
│ │ │ │ │ ├── answer-generation.component.html
│ │ │ │ │ ├── answer-generation.component.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ └── user-keys
│ │ │ │ │ │ ├── user-keys.component.html
│ │ │ │ │ │ ├── user-keys.component.scss
│ │ │ │ │ │ └── user-keys.component.ts
│ │ │ │ ├── extraction
│ │ │ │ │ ├── extraction-modal
│ │ │ │ │ │ ├── extraction-modal.component.html
│ │ │ │ │ │ ├── extraction-modal.component.scss
│ │ │ │ │ │ ├── extraction-modal.component.ts
│ │ │ │ │ │ ├── llm-configuration.component.html
│ │ │ │ │ │ ├── llm-configuration.component.scss
│ │ │ │ │ │ └── llm-configuration.component.ts
│ │ │ │ │ ├── extraction.component.html
│ │ │ │ │ └── extraction.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── learning-configuration.directive.ts
│ │ │ │ ├── semantic-model
│ │ │ │ │ ├── semantic-model.component.html
│ │ │ │ │ ├── semantic-model.component.scss
│ │ │ │ │ └── semantic-model.component.ts
│ │ │ │ └── summarization
│ │ │ │ │ ├── summarization.component.html
│ │ │ │ │ └── summarization.component.ts
│ │ │ ├── base
│ │ │ │ ├── base.component.html
│ │ │ │ ├── base.component.scss
│ │ │ │ ├── base.component.ts
│ │ │ │ ├── base.module.ts
│ │ │ │ ├── dashboard-layout
│ │ │ │ │ ├── dashboard-layout.component.html
│ │ │ │ │ ├── dashboard-layout.component.scss
│ │ │ │ │ ├── dashboard-layout.component.ts
│ │ │ │ │ ├── dashboard-layout.service.ts
│ │ │ │ │ └── index.ts
│ │ │ │ ├── empty.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── charts
│ │ │ │ ├── _charts-common.scss
│ │ │ │ ├── bar-chart
│ │ │ │ │ ├── bar-chart.component.html
│ │ │ │ │ ├── bar-chart.component.scss
│ │ │ │ │ ├── bar-chart.component.ts
│ │ │ │ │ ├── grouped-bar-chart.component.html
│ │ │ │ │ ├── grouped-bar-chart.component.scss
│ │ │ │ │ ├── grouped-bar-chart.component.ts
│ │ │ │ │ └── index.ts
│ │ │ │ ├── base-chart.directive.ts
│ │ │ │ ├── chart-utils.ts
│ │ │ │ ├── charts.module.ts
│ │ │ │ ├── empty-chart
│ │ │ │ │ ├── empty-chart.component.html
│ │ │ │ │ ├── empty-chart.component.scss
│ │ │ │ │ └── empty-chart.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── line-chart
│ │ │ │ │ ├── line-chart.component.html
│ │ │ │ │ ├── line-chart.component.scss
│ │ │ │ │ └── line-chart.component.ts
│ │ │ │ └── range-chart
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── range-chart.component.html
│ │ │ │ │ ├── range-chart.component.scss
│ │ │ │ │ ├── range-chart.component.ts
│ │ │ │ │ ├── range-evolution-chart.component.html
│ │ │ │ │ ├── range-evolution-chart.component.scss
│ │ │ │ │ ├── range-evolution-chart.component.ts
│ │ │ │ │ └── range.models.ts
│ │ │ ├── directives
│ │ │ │ ├── directives.module.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── perfect-scroll
│ │ │ │ │ └── perfect-scrollbar.directive.ts
│ │ │ ├── entities
│ │ │ │ ├── entities.component.html
│ │ │ │ ├── entities.component.scss
│ │ │ │ ├── entities.component.spec.ts
│ │ │ │ ├── entities.component.ts
│ │ │ │ ├── entities.module.ts
│ │ │ │ ├── entity-list
│ │ │ │ │ ├── entity-list.component.html
│ │ │ │ │ ├── entity-list.component.scss
│ │ │ │ │ └── entity-list.component.ts
│ │ │ │ ├── entity
│ │ │ │ │ ├── entity.component.html
│ │ │ │ │ ├── entity.component.scss
│ │ │ │ │ └── entity.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── model.ts
│ │ │ │ └── ner.service.ts
│ │ │ ├── features
│ │ │ │ ├── features-modal.component.html
│ │ │ │ ├── features-modal.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── guards
│ │ │ │ ├── agent-feature-enabled.guard.ts
│ │ │ │ ├── auth.interceptor.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── permission.guard.ts
│ │ │ │ ├── root.guard.ts
│ │ │ │ ├── select-account.guard.ts
│ │ │ │ ├── select-kb.guard.ts
│ │ │ │ ├── set-account.guard.ts
│ │ │ │ ├── set-agent.guard.ts
│ │ │ │ ├── set-kb.guard.ts
│ │ │ │ └── set-local-kb.guard.ts
│ │ │ ├── hint
│ │ │ │ ├── hint.component.html
│ │ │ │ ├── hint.component.scss
│ │ │ │ ├── hint.component.ts
│ │ │ │ ├── hint.module.ts
│ │ │ │ └── index.ts
│ │ │ ├── kb-creation
│ │ │ │ ├── index.ts
│ │ │ │ ├── kb-creation.component.html
│ │ │ │ ├── kb-creation.component.scss
│ │ │ │ └── kb-creation.component.ts
│ │ │ ├── knowledge-box-settings
│ │ │ │ ├── index.ts
│ │ │ │ ├── knowledge-box-settings.component.html
│ │ │ │ ├── knowledge-box-settings.component.scss
│ │ │ │ ├── knowledge-box-settings.component.ts
│ │ │ │ └── knowledge-box-settings.module.ts
│ │ │ ├── metrics
│ │ │ │ ├── index.ts
│ │ │ │ ├── metrics-page.component.html
│ │ │ │ ├── metrics-page.component.scss
│ │ │ │ ├── metrics-page.component.ts
│ │ │ │ ├── missing-knowledge-details
│ │ │ │ │ ├── missing-knowledge-details.component.html
│ │ │ │ │ ├── missing-knowledge-details.component.scss
│ │ │ │ │ └── missing-knowledge-details.component.ts
│ │ │ │ └── remi-metrics.service.ts
│ │ │ ├── navbar
│ │ │ │ ├── index.ts
│ │ │ │ ├── navbar.component.html
│ │ │ │ ├── navbar.component.scss
│ │ │ │ ├── navbar.component.ts
│ │ │ │ ├── navbar.module.ts
│ │ │ │ └── small-navbar.directive.ts
│ │ │ ├── page-not-found
│ │ │ │ ├── index.ts
│ │ │ │ ├── page-not-found.component.html
│ │ │ │ ├── page-not-found.component.scss
│ │ │ │ ├── page-not-found.component.spec.ts
│ │ │ │ ├── page-not-found.component.ts
│ │ │ │ └── page-not-found.module.ts
│ │ │ ├── pagination
│ │ │ │ ├── index.ts
│ │ │ │ ├── pagination.component.html
│ │ │ │ ├── pagination.component.scss
│ │ │ │ ├── pagination.component.ts
│ │ │ │ └── pagination.module.ts
│ │ │ ├── pipes
│ │ │ │ ├── format-date.pipe.ts
│ │ │ │ ├── format-duration.pipe.spec.ts
│ │ │ │ ├── format-duration.pipe.ts
│ │ │ │ ├── format-eta.pipe.spec.ts
│ │ │ │ ├── format-eta.pipe.ts
│ │ │ │ ├── format-time.pipe.ts
│ │ │ │ ├── generative-model.pipe.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── learning-option.pipe.ts
│ │ │ │ ├── line-break-formatter.pipe.spec.ts
│ │ │ │ ├── line-break-formatter.pipe.ts
│ │ │ │ ├── pipes.module.ts
│ │ │ │ └── safe-html.pipe.ts
│ │ │ ├── rag-lab
│ │ │ │ ├── _common-lab.scss
│ │ │ │ ├── index.ts
│ │ │ │ ├── lab-layout
│ │ │ │ │ ├── lab-layout.component.html
│ │ │ │ │ └── lab-layout.component.ts
│ │ │ │ ├── loading-dialog
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── loading-dialog.component.html
│ │ │ │ │ ├── loading-dialog.component.scss
│ │ │ │ │ └── loading-dialog.component.ts
│ │ │ │ ├── prompt-lab
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── prompt-lab.component.html
│ │ │ │ │ └── prompt-lab.component.ts
│ │ │ │ ├── question-block
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── question-block.component.html
│ │ │ │ │ ├── question-block.component.scss
│ │ │ │ │ └── question-block.component.ts
│ │ │ │ ├── rag-lab-page.component.html
│ │ │ │ ├── rag-lab-page.component.scss
│ │ │ │ ├── rag-lab-page.component.ts
│ │ │ │ ├── rag-lab.component.html
│ │ │ │ ├── rag-lab.component.ts
│ │ │ │ ├── rag-lab.models.ts
│ │ │ │ └── rag-lab.service.ts
│ │ │ ├── resources
│ │ │ │ ├── edit-resource
│ │ │ │ │ ├── _edit-resource.tokens.scss
│ │ │ │ │ ├── add-field
│ │ │ │ │ │ ├── add-field.component.html
│ │ │ │ │ │ ├── add-field.component.scss
│ │ │ │ │ │ └── add-field.component.ts
│ │ │ │ │ ├── annotation
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── paragraph-annotation
│ │ │ │ │ │ │ ├── paragraph-annotation.component.html
│ │ │ │ │ │ │ ├── paragraph-annotation.component.scss
│ │ │ │ │ │ │ ├── paragraph-annotation.component.ts
│ │ │ │ │ │ │ └── paragraph-annotation.service.ts
│ │ │ │ │ │ └── relations
│ │ │ │ │ │ │ ├── relations.component.html
│ │ │ │ │ │ │ ├── relations.component.scss
│ │ │ │ │ │ │ └── relations.component.ts
│ │ │ │ │ ├── classification
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── paragraph-classification
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── paragraph-classification.component.html
│ │ │ │ │ │ │ ├── paragraph-classification.component.scss
│ │ │ │ │ │ │ └── paragraph-classification.component.ts
│ │ │ │ │ │ ├── resource-classification.component.html
│ │ │ │ │ │ ├── resource-classification.component.scss
│ │ │ │ │ │ └── resource-classification.component.ts
│ │ │ │ │ ├── common-page-layout.scss
│ │ │ │ │ ├── dropzone
│ │ │ │ │ │ ├── dropzone.component.html
│ │ │ │ │ │ ├── dropzone.component.scss
│ │ │ │ │ │ └── dropzone.component.ts
│ │ │ │ │ ├── edit-resource.component.html
│ │ │ │ │ ├── edit-resource.component.scss
│ │ │ │ │ ├── edit-resource.component.ts
│ │ │ │ │ ├── edit-resource.helpers.spec.ts
│ │ │ │ │ ├── edit-resource.helpers.ts
│ │ │ │ │ ├── edit-resource.module.ts
│ │ │ │ │ ├── edit-resource.service.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── paragraph.service.ts
│ │ │ │ │ ├── preview
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── preview-table.component.html
│ │ │ │ │ │ ├── preview-table.component.scss
│ │ │ │ │ │ ├── preview-table.component.ts
│ │ │ │ │ │ ├── preview.component.html
│ │ │ │ │ │ ├── preview.component.scss
│ │ │ │ │ │ ├── preview.component.ts
│ │ │ │ │ │ ├── preview.service.ts
│ │ │ │ │ │ └── warning-modal
│ │ │ │ │ │ │ ├── warning-modal.component.html
│ │ │ │ │ │ │ ├── warning-modal.component.scss
│ │ │ │ │ │ │ └── warning-modal.component.ts
│ │ │ │ │ ├── profile
│ │ │ │ │ │ ├── file
│ │ │ │ │ │ │ ├── file.component.html
│ │ │ │ │ │ │ └── file.component.ts
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── link
│ │ │ │ │ │ │ ├── link.component.html
│ │ │ │ │ │ │ └── link.component.ts
│ │ │ │ │ │ ├── profile.component.html
│ │ │ │ │ │ ├── profile.component.scss
│ │ │ │ │ │ ├── profile.component.ts
│ │ │ │ │ │ ├── text
│ │ │ │ │ │ │ ├── text.component.html
│ │ │ │ │ │ │ ├── text.component.scss
│ │ │ │ │ │ │ └── text.component.ts
│ │ │ │ │ │ └── thumbnail
│ │ │ │ │ │ │ ├── thumbnail.component.html
│ │ │ │ │ │ │ ├── thumbnail.component.scss
│ │ │ │ │ │ │ └── thumbnail.component.ts
│ │ │ │ │ ├── resource-navigation.service.ts
│ │ │ │ │ └── select-first-field
│ │ │ │ │ │ └── select-first-field.directive.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── resource-filters.utils.ts
│ │ │ │ ├── resource-list
│ │ │ │ │ ├── error-resources-table
│ │ │ │ │ │ ├── error-resources-table.component.html
│ │ │ │ │ │ ├── error-resources-table.component.scss
│ │ │ │ │ │ ├── error-resources-table.component.spec.ts
│ │ │ │ │ │ └── error-resources-table.component.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── pending-resources-table
│ │ │ │ │ │ ├── pending-resources-table.component.html
│ │ │ │ │ │ ├── pending-resources-table.component.spec.ts
│ │ │ │ │ │ └── pending-resources-table.component.ts
│ │ │ │ │ ├── processed-resources-table
│ │ │ │ │ │ ├── processed-resources-table.component.spec.ts
│ │ │ │ │ │ └── processed-resources-table.component.ts
│ │ │ │ │ ├── resource-list.component.html
│ │ │ │ │ ├── resource-list.component.scss
│ │ │ │ │ ├── resource-list.component.spec.ts
│ │ │ │ │ ├── resource-list.component.ts
│ │ │ │ │ ├── resource-list.model.ts
│ │ │ │ │ ├── resource-list.service.ts
│ │ │ │ │ ├── resources-table.component.scss
│ │ │ │ │ ├── resources-table.directive.ts
│ │ │ │ │ ├── resources-table
│ │ │ │ │ │ ├── resources-table.component.html
│ │ │ │ │ │ ├── resources-table.component.spec.ts
│ │ │ │ │ │ └── resources-table.component.ts
│ │ │ │ │ ├── table-pagination
│ │ │ │ │ │ ├── table-pagination.component.html
│ │ │ │ │ │ ├── table-pagination.component.scss
│ │ │ │ │ │ └── table-pagination.component.ts
│ │ │ │ │ └── title-cell
│ │ │ │ │ │ ├── title-cell.component.html
│ │ │ │ │ │ ├── title-cell.component.scss
│ │ │ │ │ │ └── title-cell.component.ts
│ │ │ │ ├── resource-viewer.service.ts
│ │ │ │ ├── resources.component.ts
│ │ │ │ ├── resources.module.ts
│ │ │ │ └── upload-button
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── upload-button.component.html
│ │ │ │ │ ├── upload-button.component.ts
│ │ │ │ │ └── upload-dialog.service.ts
│ │ │ ├── retrieval-agent
│ │ │ │ ├── agent-dashboard
│ │ │ │ │ ├── _agent-dashboard.tokens.scss
│ │ │ │ │ ├── agent-dashboard.component.html
│ │ │ │ │ ├── agent-dashboard.component.scss
│ │ │ │ │ ├── agent-dashboard.component.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ └── workflow
│ │ │ │ │ │ ├── basic-elements
│ │ │ │ │ │ ├── arrow-down.component.ts
│ │ │ │ │ │ ├── config-block
│ │ │ │ │ │ │ ├── config-block.component.html
│ │ │ │ │ │ │ ├── config-block.component.scss
│ │ │ │ │ │ │ └── config-block.component.ts
│ │ │ │ │ │ ├── configuration-form
│ │ │ │ │ │ │ ├── configuration-form.component.html
│ │ │ │ │ │ │ ├── configuration-form.component.scss
│ │ │ │ │ │ │ └── configuration-form.component.ts
│ │ │ │ │ │ ├── connectable-entry
│ │ │ │ │ │ │ ├── connectable-entry.component.html
│ │ │ │ │ │ │ ├── connectable-entry.component.scss
│ │ │ │ │ │ │ └── connectable-entry.component.ts
│ │ │ │ │ │ ├── form.directive.ts
│ │ │ │ │ │ ├── headers-field
│ │ │ │ │ │ │ ├── headers-field.component.html
│ │ │ │ │ │ │ └── headers-field.component.ts
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── link
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── link.component.ts
│ │ │ │ │ │ │ └── link.service.ts
│ │ │ │ │ │ ├── node-box
│ │ │ │ │ │ │ ├── node-box.component.html
│ │ │ │ │ │ │ ├── node-box.component.scss
│ │ │ │ │ │ │ └── node-box.component.ts
│ │ │ │ │ │ ├── node-selector
│ │ │ │ │ │ │ ├── node-selector.component.html
│ │ │ │ │ │ │ ├── node-selector.component.scss
│ │ │ │ │ │ │ └── node-selector.component.ts
│ │ │ │ │ │ ├── node.directive.ts
│ │ │ │ │ │ └── rules-field
│ │ │ │ │ │ │ ├── rules-field.component.html
│ │ │ │ │ │ │ └── rules-field.component.ts
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── nodes
│ │ │ │ │ │ ├── ask
│ │ │ │ │ │ │ ├── ask-form.component.html
│ │ │ │ │ │ │ ├── ask-form.component.ts
│ │ │ │ │ │ │ ├── ask-node.component.html
│ │ │ │ │ │ │ ├── ask-node.component.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ ├── conditional
│ │ │ │ │ │ │ ├── conditional-form.component.html
│ │ │ │ │ │ │ ├── conditional-form.component.ts
│ │ │ │ │ │ │ ├── conditional-node.component.html
│ │ │ │ │ │ │ ├── conditional-node.component.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ ├── cypher
│ │ │ │ │ │ │ ├── cypher-form.component.html
│ │ │ │ │ │ │ ├── cypher-form.component.ts
│ │ │ │ │ │ │ ├── cypher-node.component.html
│ │ │ │ │ │ │ ├── cypher-node.component.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ ├── external
│ │ │ │ │ │ │ ├── external-form.component.html
│ │ │ │ │ │ │ ├── external-form.component.ts
│ │ │ │ │ │ │ ├── external-node.component.html
│ │ │ │ │ │ │ ├── external-node.component.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ ├── generate
│ │ │ │ │ │ │ ├── generate-form.component.html
│ │ │ │ │ │ │ ├── generate-form.component.ts
│ │ │ │ │ │ │ ├── generate-node.component.html
│ │ │ │ │ │ │ ├── generate-node.component.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ ├── guardrails
│ │ │ │ │ │ │ ├── guardrails-form.component.html
│ │ │ │ │ │ │ ├── guardrails-form.component.ts
│ │ │ │ │ │ │ ├── guardrails-node.component.html
│ │ │ │ │ │ │ ├── guardrails-node.component.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ ├── historical
│ │ │ │ │ │ │ ├── historical-form.component.html
│ │ │ │ │ │ │ ├── historical-form.component.ts
│ │ │ │ │ │ │ ├── historical-node.component.html
│ │ │ │ │ │ │ ├── historical-node.component.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── internet
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── internet-form.component.html
│ │ │ │ │ │ │ ├── internet-form.component.ts
│ │ │ │ │ │ │ ├── internet-node.component.html
│ │ │ │ │ │ │ └── internet-node.component.ts
│ │ │ │ │ │ ├── mcp
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── mcp-form.component.html
│ │ │ │ │ │ │ ├── mcp-form.component.ts
│ │ │ │ │ │ │ ├── mcp-node.component.html
│ │ │ │ │ │ │ └── mcp-node.component.ts
│ │ │ │ │ │ ├── remi
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── remi-form.component.html
│ │ │ │ │ │ │ ├── remi-form.component.ts
│ │ │ │ │ │ │ ├── remi-node.component.html
│ │ │ │ │ │ │ └── remi-node.component.ts
│ │ │ │ │ │ ├── rephrase
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── rephrase-form.component.html
│ │ │ │ │ │ │ ├── rephrase-form.component.ts
│ │ │ │ │ │ │ ├── rephrase-node.component.html
│ │ │ │ │ │ │ └── rephrase-node.component.ts
│ │ │ │ │ │ ├── restart
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── restart-form.component.html
│ │ │ │ │ │ │ ├── restart-form.component.ts
│ │ │ │ │ │ │ ├── restart-node.component.html
│ │ │ │ │ │ │ └── restart-node.component.ts
│ │ │ │ │ │ ├── restricted
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── restricted-form.component.html
│ │ │ │ │ │ │ ├── restricted-form.component.ts
│ │ │ │ │ │ │ ├── restricted-node.component.html
│ │ │ │ │ │ │ └── restricted-node.component.ts
│ │ │ │ │ │ ├── sql
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── sql-form.component.html
│ │ │ │ │ │ │ ├── sql-form.component.ts
│ │ │ │ │ │ │ ├── sql-node.component.html
│ │ │ │ │ │ │ └── sql-node.component.ts
│ │ │ │ │ │ ├── summarize
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── summarize-form.component.html
│ │ │ │ │ │ │ ├── summarize-form.component.ts
│ │ │ │ │ │ │ ├── summarize-node.component.html
│ │ │ │ │ │ │ └── summarize-node.component.ts
│ │ │ │ │ │ └── workflow-root
│ │ │ │ │ │ │ ├── workflow-root.component.html
│ │ │ │ │ │ │ └── workflow-root.component.ts
│ │ │ │ │ │ ├── sidebar
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── rules
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── rules-panel.component.html
│ │ │ │ │ │ │ └── rules-panel.component.ts
│ │ │ │ │ │ └── test-agent
│ │ │ │ │ │ │ ├── elements
│ │ │ │ │ │ │ ├── agent-block
│ │ │ │ │ │ │ │ ├── agent-block.component.html
│ │ │ │ │ │ │ │ ├── agent-block.component.scss
│ │ │ │ │ │ │ │ ├── agent-block.component.ts
│ │ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ │ ├── agent-context
│ │ │ │ │ │ │ │ ├── agent-context.component.html
│ │ │ │ │ │ │ │ ├── agent-context.component.scss
│ │ │ │ │ │ │ │ ├── agent-context.component.ts
│ │ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ │ ├── agent-step
│ │ │ │ │ │ │ │ ├── agent-step.component.html
│ │ │ │ │ │ │ │ ├── agent-step.component.scss
│ │ │ │ │ │ │ │ ├── agent-step.component.ts
│ │ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ │ ├── blockquote
│ │ │ │ │ │ │ │ ├── blockquote.component.html
│ │ │ │ │ │ │ │ ├── blockquote.component.scss
│ │ │ │ │ │ │ │ ├── blockquote.component.ts
│ │ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ │ ├── chip
│ │ │ │ │ │ │ │ ├── chip.component.html
│ │ │ │ │ │ │ │ ├── chip.component.scss
│ │ │ │ │ │ │ │ ├── chip.component.ts
│ │ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── test-panel.component.html
│ │ │ │ │ │ │ ├── test-panel.component.scss
│ │ │ │ │ │ │ ├── test-panel.component.ts
│ │ │ │ │ │ │ └── test-panel.service.ts
│ │ │ │ │ │ ├── workflow.effects.ts
│ │ │ │ │ │ ├── workflow.models.ts
│ │ │ │ │ │ ├── workflow.service.ts
│ │ │ │ │ │ └── workflow.state.ts
│ │ │ │ ├── arag.utils.ts
│ │ │ │ ├── drivers
│ │ │ │ │ ├── cypher-driver
│ │ │ │ │ │ ├── cypher-driver-modal.component.html
│ │ │ │ │ │ ├── cypher-driver-modal.component.ts
│ │ │ │ │ │ └── index.ts
│ │ │ │ │ ├── driver-form.scss
│ │ │ │ │ ├── drivers-page.component.html
│ │ │ │ │ ├── drivers-page.component.scss
│ │ │ │ │ ├── drivers-page.component.ts
│ │ │ │ │ ├── guardrails-driver
│ │ │ │ │ │ ├── guardrails-driver-modal.component.html
│ │ │ │ │ │ ├── guardrails-driver-modal.component.ts
│ │ │ │ │ │ └── index.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── internet-driver
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── internet-driver-modal.component.html
│ │ │ │ │ │ └── internet-driver-modal.component.ts
│ │ │ │ │ ├── mcp-driver
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── mcpsse-driver-modal.component.html
│ │ │ │ │ │ ├── mcpsse-driver-modal.component.ts
│ │ │ │ │ │ ├── mcpstdio-driver-modal.component.html
│ │ │ │ │ │ └── mcpstdio-driver-modal.component.ts
│ │ │ │ │ ├── nuclia-driver
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── nuclia-driver-modal.component.html
│ │ │ │ │ │ └── nuclia-driver-modal.component.ts
│ │ │ │ │ └── sql-driver
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── sql-driver-modal.component.html
│ │ │ │ │ │ └── sql-driver-modal.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── retrieval-agent.component.ts
│ │ │ │ └── sessions
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── session-info
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── session-info.component.html
│ │ │ │ │ ├── session-info.component.scss
│ │ │ │ │ └── session-info.component.ts
│ │ │ │ │ ├── sessions-list.component.html
│ │ │ │ │ ├── sessions-list.component.scss
│ │ │ │ │ ├── sessions-list.component.ts
│ │ │ │ │ └── sessions.component.ts
│ │ │ ├── search-widget
│ │ │ │ ├── _common-form.scss
│ │ │ │ ├── index.ts
│ │ │ │ ├── search-configuration
│ │ │ │ │ ├── filter-assistant
│ │ │ │ │ │ ├── filter-assistant-modal.component.html
│ │ │ │ │ │ ├── filter-assistant-modal.component.scss
│ │ │ │ │ │ ├── filter-assistant-modal.component.ts
│ │ │ │ │ │ ├── filter-assistant.models.ts
│ │ │ │ │ │ ├── filter-expression
│ │ │ │ │ │ │ ├── filter-expression.component.html
│ │ │ │ │ │ │ ├── filter-expression.component.scss
│ │ │ │ │ │ │ ├── filter-expression.component.ts
│ │ │ │ │ │ │ ├── filter-expression.pipe.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ ├── filter-type-and-value
│ │ │ │ │ │ │ ├── filter-type-and-value.component.html
│ │ │ │ │ │ │ ├── filter-type-and-value.component.ts
│ │ │ │ │ │ │ ├── filter-type.pipe.ts
│ │ │ │ │ │ │ ├── filter-value.component.html
│ │ │ │ │ │ │ ├── filter-value.component.scss
│ │ │ │ │ │ │ ├── filter-value.component.ts
│ │ │ │ │ │ │ └── index.ts
│ │ │ │ │ │ └── index.ts
│ │ │ │ │ ├── find-resource-modal
│ │ │ │ │ │ ├── find-resource-modal.component.html
│ │ │ │ │ │ ├── find-resource-modal.component.scss
│ │ │ │ │ │ ├── find-resource-modal.component.ts
│ │ │ │ │ │ └── index.ts
│ │ │ │ │ ├── generative-answer-form
│ │ │ │ │ │ ├── generative-answer-form.component.html
│ │ │ │ │ │ ├── generative-answer-form.component.scss
│ │ │ │ │ │ ├── generative-answer-form.component.ts
│ │ │ │ │ │ └── index.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── results-display-form
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── results-display-form.component.html
│ │ │ │ │ │ └── results-display-form.component.ts
│ │ │ │ │ ├── save-config-modal
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── save-config-modal.component.html
│ │ │ │ │ │ ├── save-config-modal.component.scss
│ │ │ │ │ │ └── save-config-modal.component.ts
│ │ │ │ │ ├── search-box-form
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── search-box-form.component.html
│ │ │ │ │ │ └── search-box-form.component.ts
│ │ │ │ │ ├── search-configuration.component.html
│ │ │ │ │ ├── search-configuration.component.scss
│ │ │ │ │ ├── search-configuration.component.ts
│ │ │ │ │ └── search-request-modal
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── search-request-modal.component.html
│ │ │ │ │ │ ├── search-request-modal.component.scss
│ │ │ │ │ │ └── search-request-modal.component.ts
│ │ │ │ ├── search-page.component.html
│ │ │ │ ├── search-page.component.scss
│ │ │ │ ├── search-page.component.ts
│ │ │ │ ├── search-widget-storage.service.ts
│ │ │ │ ├── search-widget.models.ts
│ │ │ │ ├── search-widget.service.ts
│ │ │ │ └── widgets
│ │ │ │ │ ├── dialogs
│ │ │ │ │ ├── create-widget-dialog
│ │ │ │ │ │ ├── create-widget-dialog.component.html
│ │ │ │ │ │ ├── create-widget-dialog.component.scss
│ │ │ │ │ │ └── create-widget-dialog.component.ts
│ │ │ │ │ ├── duplicate-widget-dialog
│ │ │ │ │ │ ├── duplicate-widget-dialog.component.html
│ │ │ │ │ │ ├── duplicate-widget-dialog.component.scss
│ │ │ │ │ │ └── duplicate-widget-dialog.component.ts
│ │ │ │ │ ├── embed-widget-dialog
│ │ │ │ │ │ ├── embed-widget-dialog.component.html
│ │ │ │ │ │ ├── embed-widget-dialog.component.scss
│ │ │ │ │ │ └── embed-widget-dialog.component.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ └── rename-widget-dialog
│ │ │ │ │ │ ├── rename-widget-dialog.component.html
│ │ │ │ │ │ ├── rename-widget-dialog.component.scss
│ │ │ │ │ │ └── rename-widget-dialog.component.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── widget-form
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── widget-form.component.html
│ │ │ │ │ ├── widget-form.component.scss
│ │ │ │ │ └── widget-form.component.ts
│ │ │ │ │ ├── widget-list.component.html
│ │ │ │ │ ├── widget-list.component.scss
│ │ │ │ │ ├── widget-list.component.ts
│ │ │ │ │ ├── widgets.component.ts
│ │ │ │ │ └── widgets.routes.ts
│ │ │ ├── select-account-kb
│ │ │ │ ├── _select-account.tokens.scss
│ │ │ │ ├── index.ts
│ │ │ │ ├── select-account-kb.module.ts
│ │ │ │ ├── select-account-kb.service.ts
│ │ │ │ ├── select-account
│ │ │ │ │ ├── select-account.component.html
│ │ │ │ │ ├── select-account.component.scss
│ │ │ │ │ ├── select-account.component.spec.ts
│ │ │ │ │ └── select-account.component.ts
│ │ │ │ ├── select-kb
│ │ │ │ │ ├── select-kb.component.html
│ │ │ │ │ ├── select-kb.component.scss
│ │ │ │ │ └── select-kb.component.ts
│ │ │ │ └── utils.ts
│ │ │ ├── services
│ │ │ │ ├── app.service.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── standalone.service.spec.ts
│ │ │ │ └── standalone.service.ts
│ │ │ ├── tasks-automation
│ │ │ │ ├── _task.common.scss
│ │ │ │ ├── index.ts
│ │ │ │ ├── task-details
│ │ │ │ │ ├── task-details.component.html
│ │ │ │ │ ├── task-details.component.scss
│ │ │ │ │ ├── task-details.component.ts
│ │ │ │ │ ├── task-execution
│ │ │ │ │ │ ├── task-execution.component.html
│ │ │ │ │ │ ├── task-execution.component.scss
│ │ │ │ │ │ └── task-execution.component.ts
│ │ │ │ │ ├── task-settings
│ │ │ │ │ │ ├── task-settings.component.html
│ │ │ │ │ │ ├── task-settings.component.scss
│ │ │ │ │ │ └── task-settings.component.ts
│ │ │ │ │ └── task-testing
│ │ │ │ │ │ ├── graph-results
│ │ │ │ │ │ ├── graph-results.component.html
│ │ │ │ │ │ ├── graph-results.component.scss
│ │ │ │ │ │ └── graph-results.component.ts
│ │ │ │ │ │ ├── labeler-results
│ │ │ │ │ │ ├── labeler-results.component.html
│ │ │ │ │ │ ├── labeler-results.component.scss
│ │ │ │ │ │ └── labeler-results.component.ts
│ │ │ │ │ │ ├── task-testing.component.html
│ │ │ │ │ │ ├── task-testing.component.scss
│ │ │ │ │ │ ├── task-testing.component.ts
│ │ │ │ │ │ └── test-results
│ │ │ │ │ │ ├── test-results.component.html
│ │ │ │ │ │ ├── test-results.component.scss
│ │ │ │ │ │ └── test-results.component.ts
│ │ │ │ ├── task-forms
│ │ │ │ │ ├── ask
│ │ │ │ │ │ ├── ask.component.html
│ │ │ │ │ │ └── ask.component.ts
│ │ │ │ │ ├── content-safety
│ │ │ │ │ │ ├── content-safety.component.html
│ │ │ │ │ │ └── content-safety.component.ts
│ │ │ │ │ ├── graph-extraction
│ │ │ │ │ │ ├── graph-extraction.component.html
│ │ │ │ │ │ ├── graph-extraction.component.scss
│ │ │ │ │ │ └── graph-extraction.component.ts
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── labeler
│ │ │ │ │ │ ├── labeler.component.html
│ │ │ │ │ │ └── labeler.component.ts
│ │ │ │ │ ├── labeling-configuration
│ │ │ │ │ │ ├── labeling-configuration.component.html
│ │ │ │ │ │ ├── labeling-configuration.component.scss
│ │ │ │ │ │ └── labeling-configuration.component.ts
│ │ │ │ │ ├── llm-security
│ │ │ │ │ │ ├── llm-security.component.html
│ │ │ │ │ │ └── llm-security.component.ts
│ │ │ │ │ ├── question-answer
│ │ │ │ │ │ ├── question-answer.component.html
│ │ │ │ │ │ └── question-answer.component.ts
│ │ │ │ │ ├── task-form.component.html
│ │ │ │ │ ├── task-form.component.scss
│ │ │ │ │ ├── task-form.component.ts
│ │ │ │ │ └── task-route.directive.ts
│ │ │ │ ├── task-list
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── task-card.component.html
│ │ │ │ │ ├── task-card.component.scss
│ │ │ │ │ ├── task-card.component.ts
│ │ │ │ │ ├── task-duplicate-dialog.component.html
│ │ │ │ │ ├── task-duplicate-dialog.component.ts
│ │ │ │ │ ├── task-list.component.html
│ │ │ │ │ ├── task-list.component.scss
│ │ │ │ │ └── task-list.component.ts
│ │ │ │ ├── tasks-automation.component.ts
│ │ │ │ ├── tasks-automation.models.ts
│ │ │ │ ├── tasks-automation.routes.ts
│ │ │ │ └── tasks-automation.service.ts
│ │ │ ├── token-dialog
│ │ │ │ ├── expiration-modal.component.html
│ │ │ │ ├── expiration-modal.component.scss
│ │ │ │ ├── expiration-modal.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── token-dialog.component.html
│ │ │ │ ├── token-dialog.component.scss
│ │ │ │ ├── token-dialog.component.ts
│ │ │ │ └── token-dialog.module.ts
│ │ │ ├── topbar
│ │ │ │ ├── index.ts
│ │ │ │ ├── kb-switch
│ │ │ │ │ ├── kb-switch.component.html
│ │ │ │ │ ├── kb-switch.component.scss
│ │ │ │ │ └── kb-switch.component.ts
│ │ │ │ ├── standalone-menu
│ │ │ │ │ ├── standalone-menu.component.html
│ │ │ │ │ ├── standalone-menu.component.scss
│ │ │ │ │ └── standalone-menu.component.ts
│ │ │ │ ├── topbar.component.html
│ │ │ │ ├── topbar.component.scss
│ │ │ │ ├── topbar.component.ts
│ │ │ │ ├── topbar.module.ts
│ │ │ │ └── user-menu
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── user-menu.component.html
│ │ │ │ │ ├── user-menu.component.scss
│ │ │ │ │ └── user-menu.component.ts
│ │ │ ├── upload
│ │ │ │ ├── create-link
│ │ │ │ │ ├── create-link.component.html
│ │ │ │ │ ├── create-link.component.scss
│ │ │ │ │ └── create-link.component.ts
│ │ │ │ ├── csv-parser.spec.ts
│ │ │ │ ├── csv-parser.ts
│ │ │ │ ├── csv-select
│ │ │ │ │ ├── csv-select.component.html
│ │ │ │ │ ├── csv-select.component.scss
│ │ │ │ │ └── csv-select.component.ts
│ │ │ │ ├── desktop-upload.service.ts
│ │ │ │ ├── extraction-select
│ │ │ │ │ ├── extraction-select.component.html
│ │ │ │ │ ├── extraction-select.component.scss
│ │ │ │ │ └── extraction-select.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── upload-bar
│ │ │ │ │ ├── upload-bar.component.html
│ │ │ │ │ ├── upload-bar.component.scss
│ │ │ │ │ └── upload-bar.component.ts
│ │ │ │ ├── upload-data
│ │ │ │ │ ├── desktop-sources
│ │ │ │ │ │ ├── desktop-sources.component.html
│ │ │ │ │ │ ├── desktop-sources.component.scss
│ │ │ │ │ │ └── desktop-sources.component.ts
│ │ │ │ │ ├── upload-data.component.html
│ │ │ │ │ ├── upload-data.component.scss
│ │ │ │ │ ├── upload-data.component.ts
│ │ │ │ │ └── upload-option
│ │ │ │ │ │ ├── upload-option.component.html
│ │ │ │ │ │ ├── upload-option.component.scss
│ │ │ │ │ │ └── upload-option.component.ts
│ │ │ │ ├── upload-files
│ │ │ │ │ ├── upload-files-dialog.component.ts
│ │ │ │ │ ├── upload-files.component.html
│ │ │ │ │ ├── upload-files.component.scss
│ │ │ │ │ └── upload-files.component.ts
│ │ │ │ ├── upload-progress
│ │ │ │ │ ├── upload-progress-dialog.component.ts
│ │ │ │ │ ├── upload-progress.component.html
│ │ │ │ │ ├── upload-progress.component.scss
│ │ │ │ │ └── upload-progress.component.ts
│ │ │ │ ├── upload-qna
│ │ │ │ │ ├── upload-qna.component.html
│ │ │ │ │ ├── upload-qna.component.scss
│ │ │ │ │ └── upload-qna.component.ts
│ │ │ │ ├── upload-routing.module.ts
│ │ │ │ ├── upload-sitemap
│ │ │ │ │ ├── sitemap-select
│ │ │ │ │ │ ├── sitemap-select.component.html
│ │ │ │ │ │ └── sitemap-select.component.ts
│ │ │ │ │ ├── upload-sitemap.component.html
│ │ │ │ │ ├── upload-sitemap.component.scss
│ │ │ │ │ └── upload-sitemap.component.ts
│ │ │ │ ├── upload-text
│ │ │ │ │ ├── upload-text.component.html
│ │ │ │ │ ├── upload-text.component.scss
│ │ │ │ │ └── upload-text.component.ts
│ │ │ │ ├── upload.module.ts
│ │ │ │ ├── upload.service.ts
│ │ │ │ └── upload.utils.ts
│ │ │ └── validators
│ │ │ │ ├── form.validator.ts
│ │ │ │ └── index.ts
│ │ └── test-setup.ts
│ ├── tsconfig.json
│ ├── tsconfig.lib.json
│ └── tsconfig.spec.json
├── core
│ ├── README.md
│ ├── jest.config.js
│ ├── project.json
│ ├── src
│ │ ├── index.ts
│ │ ├── lib
│ │ │ ├── analytics
│ │ │ │ ├── feature-flag.service.ts
│ │ │ │ ├── features.service.ts
│ │ │ │ └── index.ts
│ │ │ ├── api
│ │ │ │ ├── account.service.ts
│ │ │ │ ├── billing.service.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── sdk.service.ts
│ │ │ │ ├── sso.service.ts
│ │ │ │ ├── user.service.spec.ts
│ │ │ │ ├── user.service.ts
│ │ │ │ └── zone.service.ts
│ │ │ ├── auth
│ │ │ │ ├── auth.guard.ts
│ │ │ │ ├── auth.service.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── jwt
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── jwthelper.service.ts
│ │ │ │ │ └── jwtoptions.token.ts
│ │ │ │ ├── login.service.ts
│ │ │ │ ├── oauth.service.ts
│ │ │ │ ├── saml.service.ts
│ │ │ │ ├── token.service.spec.ts
│ │ │ │ └── token.service.ts
│ │ │ ├── config
│ │ │ │ ├── app.init.service.ts
│ │ │ │ ├── backend-config.service.spec.ts
│ │ │ │ ├── backend-config.service.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── stf-config.module.ts
│ │ │ ├── label
│ │ │ │ ├── index.ts
│ │ │ │ ├── label-dropdown
│ │ │ │ │ ├── label-dropdown.component.html
│ │ │ │ │ ├── label-dropdown.component.scss
│ │ │ │ │ ├── label-dropdown.component.spec.ts
│ │ │ │ │ └── label-dropdown.component.ts
│ │ │ │ ├── label-field
│ │ │ │ │ ├── label-field.component.html
│ │ │ │ │ ├── label-field.component.scss
│ │ │ │ │ └── label-field.component.ts
│ │ │ │ ├── label-list
│ │ │ │ │ ├── label-list.component.html
│ │ │ │ │ ├── label-list.component.scss
│ │ │ │ │ └── label-list.component.ts
│ │ │ │ ├── label-sets
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── label-list.pipe.spec.ts
│ │ │ │ │ ├── label-list.pipe.ts
│ │ │ │ │ ├── label-set-list
│ │ │ │ │ │ ├── label-set-list.component.html
│ │ │ │ │ │ ├── label-set-list.component.scss
│ │ │ │ │ │ └── label-set-list.component.ts
│ │ │ │ │ ├── label-set
│ │ │ │ │ │ ├── color-picker
│ │ │ │ │ │ │ ├── color-picker.component.html
│ │ │ │ │ │ │ ├── color-picker.component.scss
│ │ │ │ │ │ │ └── color-picker.component.ts
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── label-set-form
│ │ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ │ ├── label-set-form-modal.component.html
│ │ │ │ │ │ │ ├── label-set-form-modal.component.scss
│ │ │ │ │ │ │ ├── label-set-form-modal.component.ts
│ │ │ │ │ │ │ ├── label-set-form.component.html
│ │ │ │ │ │ │ ├── label-set-form.component.scss
│ │ │ │ │ │ │ └── label-set-form.component.ts
│ │ │ │ │ │ ├── label-set.component.html
│ │ │ │ │ │ ├── label-set.component.scss
│ │ │ │ │ │ ├── label-set.component.ts
│ │ │ │ │ │ └── label
│ │ │ │ │ │ │ ├── label.component.html
│ │ │ │ │ │ │ ├── label.component.scss
│ │ │ │ │ │ │ └── label.component.ts
│ │ │ │ │ ├── label-sets.component.html
│ │ │ │ │ ├── label-sets.component.scss
│ │ │ │ │ ├── label-sets.component.ts
│ │ │ │ │ ├── label-sets.module.ts
│ │ │ │ │ ├── missing-labels
│ │ │ │ │ │ ├── index.ts
│ │ │ │ │ │ ├── missing-labels-dialog.component.html
│ │ │ │ │ │ ├── missing-labels-dialog.component.scss
│ │ │ │ │ │ └── missing-labels-dialog.component.ts
│ │ │ │ │ ├── model.ts
│ │ │ │ │ └── utils.ts
│ │ │ │ ├── label.module.ts
│ │ │ │ └── labels.service.ts
│ │ │ ├── models
│ │ │ │ ├── account.model.ts
│ │ │ │ ├── billing.model.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── kb.models.ts
│ │ │ │ ├── local.model.ts
│ │ │ │ ├── magic.model.ts
│ │ │ │ ├── permissions.model.ts
│ │ │ │ ├── region.model.ts
│ │ │ │ ├── user.model.ts
│ │ │ │ ├── welcome.model.ts
│ │ │ │ └── zone.model.ts
│ │ │ ├── notifications
│ │ │ │ ├── index.ts
│ │ │ │ ├── notification-button
│ │ │ │ │ ├── notification-button.component.html
│ │ │ │ │ ├── notification-button.component.scss
│ │ │ │ │ └── notification-button.component.ts
│ │ │ │ ├── notification-type.pipe.spec.ts
│ │ │ │ ├── notification-type.pipe.ts
│ │ │ │ ├── notification.model.ts
│ │ │ │ ├── notification.service.ts
│ │ │ │ ├── notification
│ │ │ │ │ ├── notification.component.html
│ │ │ │ │ ├── notification.component.scss
│ │ │ │ │ └── notification.component.ts
│ │ │ │ └── notifications-panel
│ │ │ │ │ ├── notifications-panel.component.html
│ │ │ │ │ ├── notifications-panel.component.scss
│ │ │ │ │ └── notifications-panel.component.ts
│ │ │ ├── parameters-table
│ │ │ │ ├── index.ts
│ │ │ │ ├── parameters-table.component.html
│ │ │ │ ├── parameters-table.component.scss
│ │ │ │ └── parameters-table.component.ts
│ │ │ ├── services
│ │ │ │ ├── index.ts
│ │ │ │ └── navigation.service.ts
│ │ │ ├── testing
│ │ │ │ ├── index.ts
│ │ │ │ └── utils.ts
│ │ │ ├── ui
│ │ │ │ ├── file-upload
│ │ │ │ │ ├── file-drop.directive.ts
│ │ │ │ │ ├── file-drop.utils.ts
│ │ │ │ │ ├── file-select.directive.ts
│ │ │ │ │ ├── file-upload.module.ts
│ │ │ │ │ └── index.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── lower-case-input.directive.ts
│ │ │ │ ├── pipes
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── size.pipe.ts
│ │ │ │ │ └── stf-pipes.module.ts
│ │ │ │ ├── sidebar.service.ts
│ │ │ │ └── splash-screen.service.ts
│ │ │ ├── unauthorized-feature
│ │ │ │ ├── index.ts
│ │ │ │ ├── unauthorized-feature-modal.component.html
│ │ │ │ ├── unauthorized-feature-modal.component.scss
│ │ │ │ ├── unauthorized-feature-modal.component.ts
│ │ │ │ ├── unauthorized-feature.component.ts
│ │ │ │ ├── unauthorized-feature.directive.ts
│ │ │ │ └── unauthorized-feature.model.ts
│ │ │ └── utils
│ │ │ │ ├── clonedeep.ts
│ │ │ │ ├── deep-equal.spec.ts
│ │ │ │ ├── deep-equal.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── md5.ts
│ │ │ │ └── utils.ts
│ │ └── test-setup.ts
│ ├── tsconfig.json
│ ├── tsconfig.lib.json
│ └── tsconfig.spec.json
├── sdk-core
│ ├── .babelrc
│ ├── .eslintrc.json
│ ├── CHANGELOG.md
│ ├── README.md
│ ├── jest.config.js
│ ├── package.json
│ ├── project.json
│ ├── rollup.config.mjs
│ ├── src
│ │ ├── index.ts
│ │ └── lib
│ │ │ ├── auth
│ │ │ ├── auth.models.ts
│ │ │ ├── auth.spec.ts
│ │ │ ├── auth.ts
│ │ │ ├── index.ts
│ │ │ └── jwt-helpers.ts
│ │ │ ├── core.spec.ts
│ │ │ ├── core.ts
│ │ │ ├── db
│ │ │ ├── db.models.ts
│ │ │ ├── db.spec.ts
│ │ │ ├── db.ts
│ │ │ ├── index.ts
│ │ │ ├── kb
│ │ │ │ ├── activity
│ │ │ │ │ ├── activity-monitor.ts
│ │ │ │ │ ├── activity.models.ts
│ │ │ │ │ └── index.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── kb.models.ts
│ │ │ │ └── kb.ts
│ │ │ ├── notifications
│ │ │ │ ├── index.ts
│ │ │ │ ├── notification.models.ts
│ │ │ │ └── notifications.ts
│ │ │ ├── resource
│ │ │ │ ├── index.ts
│ │ │ │ ├── resource.helpers.spec.ts
│ │ │ │ ├── resource.helpers.ts
│ │ │ │ ├── resource.mapper.ts
│ │ │ │ ├── resource.models.ts
│ │ │ │ └── resource.ts
│ │ │ ├── retrieval-agent
│ │ │ │ ├── driver.models.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── interactions.models.ts
│ │ │ │ ├── retrieval-agent.models.ts
│ │ │ │ ├── retrieval-agent.ts
│ │ │ │ ├── retrieval-agent.types.ts
│ │ │ │ ├── session.models.ts
│ │ │ │ └── session.ts
│ │ │ ├── search
│ │ │ │ ├── agentic.spec.ts
│ │ │ │ ├── agentic.ts
│ │ │ │ ├── ask.models.ts
│ │ │ │ ├── ask.spec.ts
│ │ │ │ ├── ask.ts
│ │ │ │ ├── filter.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── search.models.ts
│ │ │ │ ├── search.ts
│ │ │ │ └── widget.ts
│ │ │ ├── task
│ │ │ │ ├── index.ts
│ │ │ │ ├── task.models.ts
│ │ │ │ └── task.ts
│ │ │ ├── training
│ │ │ │ ├── index.ts
│ │ │ │ ├── training.models.ts
│ │ │ │ └── training.ts
│ │ │ └── upload.ts
│ │ │ ├── events.ts
│ │ │ ├── models.ts
│ │ │ ├── rest
│ │ │ ├── index.ts
│ │ │ ├── rest.spec.ts
│ │ │ └── rest.ts
│ │ │ └── test.utils.spec.ts
│ ├── tsconfig.json
│ ├── tsconfig.lib.json
│ ├── tsconfig.lib.umd.json
│ └── tsconfig.spec.json
├── search-widget
│ ├── .eslintrc.cjs
│ ├── CHANGELOG.md
│ ├── README.md
│ ├── package.json
│ ├── project.json
│ ├── public
│ │ ├── i18n
│ │ │ ├── ca.json
│ │ │ ├── en.json
│ │ │ ├── es.json
│ │ │ └── fr.json
│ │ ├── icons
│ │ │ └── glyphs-sprite.svg
│ │ ├── logos
│ │ │ └── logo-grey.svg
│ │ └── tiles
│ │ │ └── audio-waves.mp4
│ ├── src
│ │ ├── common
│ │ │ ├── _global.scss
│ │ │ ├── actions
│ │ │ │ └── actions.ts
│ │ │ ├── button
│ │ │ │ ├── Button.scss
│ │ │ │ ├── Button.svelte
│ │ │ │ ├── IconButton.svelte
│ │ │ │ ├── button.spec.ts
│ │ │ │ └── index.ts
│ │ │ ├── checkbox
│ │ │ │ ├── Checkbox.scss
│ │ │ │ └── Checkbox.svelte
│ │ │ ├── chip
│ │ │ │ ├── Chip.scss
│ │ │ │ └── Chip.svelte
│ │ │ ├── common-style.scss
│ │ │ ├── dropdown
│ │ │ │ ├── Dropdown.scss
│ │ │ │ ├── Dropdown.svelte
│ │ │ │ ├── Option.scss
│ │ │ │ └── Option.svelte
│ │ │ ├── expander
│ │ │ │ ├── Expander.scss
│ │ │ │ └── Expander.svelte
│ │ │ ├── icons
│ │ │ │ ├── Icon.scss
│ │ │ │ ├── Icon.svelte
│ │ │ │ └── index.ts
│ │ │ ├── index.ts
│ │ │ ├── indicators
│ │ │ │ ├── DocTypeIndicator.scss
│ │ │ │ ├── DocTypeIndicator.svelte
│ │ │ │ ├── PageIndicator.scss
│ │ │ │ ├── PageIndicator.svelte
│ │ │ │ ├── TimeIndicator.scss
│ │ │ │ ├── TimeIndicator.svelte
│ │ │ │ ├── _indicator.scss
│ │ │ │ └── index.ts
│ │ │ ├── infinite-scroll
│ │ │ │ └── InfiniteScroll.svelte
│ │ │ ├── label
│ │ │ │ ├── Label.svelte
│ │ │ │ ├── index.ts
│ │ │ │ └── label.utils.ts
│ │ │ ├── modal
│ │ │ │ ├── ConfirmDialog.scss
│ │ │ │ ├── ConfirmDialog.svelte
│ │ │ │ ├── Modal.scss
│ │ │ │ ├── Modal.svelte
│ │ │ │ ├── _common-modal.scss
│ │ │ │ ├── index.ts
│ │ │ │ ├── modal.spec.ts
│ │ │ │ └── modal.utils.ts
│ │ │ ├── paragraph-result
│ │ │ │ ├── AllResultsToggle.scss
│ │ │ │ ├── AllResultsToggle.svelte
│ │ │ │ ├── ParagraphResult.scss
│ │ │ │ ├── ParagraphResult.svelte
│ │ │ │ └── index.ts
│ │ │ ├── spinner
│ │ │ │ ├── LoadingDots.scss
│ │ │ │ ├── LoadingDots.svelte
│ │ │ │ ├── Spinner.scss
│ │ │ │ ├── Spinner.svelte
│ │ │ │ └── index.ts
│ │ │ ├── tabs
│ │ │ │ ├── TabItem.scss
│ │ │ │ ├── TabItem.svelte
│ │ │ │ ├── TabsList.scss
│ │ │ │ ├── TabsList.svelte
│ │ │ │ └── index.ts
│ │ │ ├── textarea
│ │ │ │ ├── Textarea.scss
│ │ │ │ └── Textarea.svelte
│ │ │ ├── thumbnail
│ │ │ │ ├── Thumbnail.scss
│ │ │ │ ├── Thumbnail.svelte
│ │ │ │ ├── ThumbnailPlayer.scss
│ │ │ │ ├── ThumbnailPlayer.svelte
│ │ │ │ └── index.ts
│ │ │ ├── toggle
│ │ │ │ ├── Toggle.scss
│ │ │ │ └── Toggle.svelte
│ │ │ ├── tooltip
│ │ │ │ ├── Tooltip.scss
│ │ │ │ ├── Tooltip.svelte
│ │ │ │ ├── index.ts
│ │ │ │ └── tooltip.ts
│ │ │ └── utils.ts
│ │ ├── components
│ │ │ ├── answer
│ │ │ │ ├── Answer.scss
│ │ │ │ ├── Answer.svelte
│ │ │ │ ├── Chat.scss
│ │ │ │ ├── Chat.svelte
│ │ │ │ ├── ChatInput.scss
│ │ │ │ ├── ChatInput.svelte
│ │ │ │ ├── DebugInfo.scss
│ │ │ │ ├── DebugInfo.svelte
│ │ │ │ ├── Feedback.scss
│ │ │ │ ├── Feedback.svelte
│ │ │ │ ├── InitialAnswer.scss
│ │ │ │ ├── InitialAnswer.svelte
│ │ │ │ ├── JsonAnswer.scss
│ │ │ │ ├── JsonAnswer.svelte
│ │ │ │ ├── Sources.scss
│ │ │ │ ├── Sources.svelte
│ │ │ │ ├── index.ts
│ │ │ │ └── json-answer.model.ts
│ │ │ ├── image
│ │ │ │ ├── Image.scss
│ │ │ │ └── Image.svelte
│ │ │ ├── index.ts
│ │ │ ├── info-card
│ │ │ │ ├── InfoCard.scss
│ │ │ │ └── InfoCard.svelte
│ │ │ ├── input-images
│ │ │ │ ├── InputImages.scss
│ │ │ │ └── InputImages.svelte
│ │ │ ├── knowledge-graph
│ │ │ │ ├── D3Loader.svelte
│ │ │ │ ├── Graph.scss
│ │ │ │ ├── Graph.svelte
│ │ │ │ ├── KnowledgeGraph.scss
│ │ │ │ ├── KnowledgeGraph.svelte
│ │ │ │ ├── KnowledgeGraphPanel.scss
│ │ │ │ ├── KnowledgeGraphPanel.svelte
│ │ │ │ └── index.ts
│ │ │ ├── result-row
│ │ │ │ ├── FieldMetadata.scss
│ │ │ │ ├── FieldMetadata.svelte
│ │ │ │ ├── ResultRow.scss
│ │ │ │ ├── ResultRow.svelte
│ │ │ │ └── index.ts
│ │ │ ├── results-order
│ │ │ │ ├── ResultsOrderButton.scss
│ │ │ │ └── ResultsOrderButton.svelte
│ │ │ ├── search-filters
│ │ │ │ ├── SearchFilters.scss
│ │ │ │ └── SearchFilters.svelte
│ │ │ ├── search-input
│ │ │ │ ├── SearchInput.scss
│ │ │ │ ├── SearchInput.spec.ts
│ │ │ │ ├── SearchInput.svelte
│ │ │ │ └── index.ts
│ │ │ ├── suggestions
│ │ │ │ ├── Suggestions.scss
│ │ │ │ └── Suggestions.svelte
│ │ │ └── viewer
│ │ │ │ ├── MetadataContainer.scss
│ │ │ │ ├── MetadataContainer.svelte
│ │ │ │ ├── MetadataSectionHeader.scss
│ │ │ │ ├── MetadataSectionHeader.svelte
│ │ │ │ ├── SearchResultNavigator.scss
│ │ │ │ ├── SearchResultNavigator.svelte
│ │ │ │ ├── Viewer.scss
│ │ │ │ ├── Viewer.svelte
│ │ │ │ ├── ViewerContent.scss
│ │ │ │ ├── ViewerContent.svelte
│ │ │ │ ├── index.ts
│ │ │ │ ├── renderers
│ │ │ │ ├── AudioRenderer.svelte
│ │ │ │ ├── ConversationRenderer.scss
│ │ │ │ ├── ConversationRenderer.svelte
│ │ │ │ ├── ImageRenderer.scss
│ │ │ │ ├── ImageRenderer.svelte
│ │ │ │ ├── PdfRenderer.svelte
│ │ │ │ ├── SpreadsheetRenderer.scss
│ │ │ │ ├── SpreadsheetRenderer.svelte
│ │ │ │ ├── TextRenderer.svelte
│ │ │ │ ├── VideoRenderer.scss
│ │ │ │ ├── VideoRenderer.svelte
│ │ │ │ ├── index.ts
│ │ │ │ ├── players
│ │ │ │ │ ├── AudioPlayer.scss
│ │ │ │ │ ├── AudioPlayer.svelte
│ │ │ │ │ ├── PlayerControls.scss
│ │ │ │ │ ├── PlayerControls.svelte
│ │ │ │ │ ├── VideoPlayer.scss
│ │ │ │ │ ├── VideoPlayer.svelte
│ │ │ │ │ ├── YoutubePlayer.scss
│ │ │ │ │ ├── YoutubePlayer.svelte
│ │ │ │ │ └── index.ts
│ │ │ │ └── renderings
│ │ │ │ │ ├── ExtractedTextRendering.svelte
│ │ │ │ │ ├── HtmlRendering.svelte
│ │ │ │ │ ├── MarkdownRendering.scss
│ │ │ │ │ ├── MarkdownRendering.svelte
│ │ │ │ │ ├── PdfRendering.scss
│ │ │ │ │ ├── PdfRendering.svelte
│ │ │ │ │ ├── PlainTextRendering.svelte
│ │ │ │ │ ├── RstRendering.svelte
│ │ │ │ │ ├── TextContentRendering.svelte
│ │ │ │ │ └── index.ts
│ │ │ │ └── utils.ts
│ │ ├── core
│ │ │ ├── api.ts
│ │ │ ├── i18n.ts
│ │ │ ├── index.ts
│ │ │ ├── knowledge-graph.models.ts
│ │ │ ├── models.ts
│ │ │ ├── reset.ts
│ │ │ ├── search-bar.ts
│ │ │ ├── state-lib
│ │ │ │ ├── index.ts
│ │ │ │ ├── state.lib.ts
│ │ │ │ └── writable-subject.ts
│ │ │ ├── stores
│ │ │ │ ├── answers.store.ts
│ │ │ │ ├── effects.ts
│ │ │ │ ├── entities.store.ts
│ │ │ │ ├── graph.store.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── labels.store.ts
│ │ │ │ ├── search.store.ts
│ │ │ │ ├── suggestions.store.ts
│ │ │ │ ├── viewer.store.ts
│ │ │ │ └── widget.store.ts
│ │ │ ├── tracking.ts
│ │ │ └── utils.ts
│ │ ├── index.js
│ │ └── widgets
│ │ │ ├── chat-widget
│ │ │ ├── ChatWidget.scss
│ │ │ ├── ChatWidget.svelte
│ │ │ └── index.ts
│ │ │ ├── global-widget
│ │ │ ├── GlobalWidget.scss
│ │ │ ├── GlobalWidget.svelte
│ │ │ ├── components
│ │ │ │ ├── answer
│ │ │ │ │ ├── Answer.scss
│ │ │ │ │ ├── Answer.svelte
│ │ │ │ │ ├── Feedback.svelte
│ │ │ │ │ ├── InitialAnswer.scss
│ │ │ │ │ ├── InitialAnswer.svelte
│ │ │ │ │ └── index.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── paragraph-result
│ │ │ │ │ ├── ParagraphResult.scss
│ │ │ │ │ └── ParagraphResult.svelte
│ │ │ │ ├── result-row
│ │ │ │ │ ├── ResultRow.scss
│ │ │ │ │ ├── ResultRow.svelte
│ │ │ │ │ └── index.ts
│ │ │ │ ├── search-input
│ │ │ │ │ ├── SearchInput.scss
│ │ │ │ │ ├── SearchInput.spec.ts
│ │ │ │ │ └── SearchInput.svelte
│ │ │ │ └── suggestions
│ │ │ │ │ ├── Suggestions.scss
│ │ │ │ │ └── Suggestions.svelte
│ │ │ ├── index.ts
│ │ │ └── lib.ts
│ │ │ ├── index.ts
│ │ │ ├── popup-widget
│ │ │ ├── PopupWidget.scss
│ │ │ ├── PopupWidget.svelte
│ │ │ └── index.ts
│ │ │ ├── search-widget
│ │ │ ├── SearchBar.scss
│ │ │ ├── SearchBar.svelte
│ │ │ ├── SearchResults.scss
│ │ │ ├── SearchResults.svelte
│ │ │ ├── index.ts
│ │ │ └── lib.ts
│ │ │ └── viewer-widget
│ │ │ ├── ViewerWidget.scss
│ │ │ ├── ViewerWidget.svelte
│ │ │ └── index.ts
│ ├── svelte.config.js
│ ├── tsconfig.json
│ ├── tsconfig.lib.json
│ ├── tsconfig.spec.json
│ ├── vite.config.mjs
│ └── widget.babel
├── sistema
│ ├── .eslintrc.json
│ ├── README.md
│ ├── assets
│ │ ├── .gitkeep
│ │ ├── connector-logos
│ │ │ ├── algolia.svg
│ │ │ ├── brightcove.svg
│ │ │ ├── confluence.svg
│ │ │ ├── dropbox.svg
│ │ │ ├── folder.svg
│ │ │ ├── gcs.svg
│ │ │ ├── gdrive.svg
│ │ │ ├── nucliacloud.svg
│ │ │ ├── onedrive.svg
│ │ │ ├── rss.svg
│ │ │ ├── s3.svg
│ │ │ ├── sharepoint.svg
│ │ │ └── sitemap.svg
│ │ ├── fonts
│ │ │ ├── source-code-pro
│ │ │ │ ├── source-code-pro-v14-latin-regular.woff
│ │ │ │ └── source-code-pro-v14-latin-regular.woff2
│ │ │ └── videoagular
│ │ │ │ ├── Videogular.json
│ │ │ │ └── videogular.woff
│ │ ├── glyphs-sprite.svg
│ │ ├── icons
│ │ │ └── folder.svg
│ │ ├── logos
│ │ │ ├── logo-white.svg
│ │ │ ├── logo.svg
│ │ │ ├── nuclia-desktop-white.svg
│ │ │ ├── nuclia-desktop.svg
│ │ │ ├── nuclia-symbol.svg
│ │ │ ├── nucliadb-symbol.svg
│ │ │ ├── nucliadb.svg
│ │ │ └── stage-icon.svg
│ │ ├── signup
│ │ │ └── check-email.png
│ │ └── sso-icons
│ │ │ ├── github.svg
│ │ │ ├── google.svg
│ │ │ └── microsoft.svg
│ ├── glyphs
│ │ ├── account.svg
│ │ ├── activity-log.svg
│ │ ├── add-file.svg
│ │ ├── add-user.svg
│ │ ├── annotate.svg
│ │ ├── arrow-down.svg
│ │ ├── arrow-left.svg
│ │ ├── arrow-right.svg
│ │ ├── arrow-up.svg
│ │ ├── arrows-related.svg
│ │ ├── arrows-unrelated.svg
│ │ ├── audio.svg
│ │ ├── bell.svg
│ │ ├── calendar.svg
│ │ ├── chart.svg
│ │ ├── chat.svg
│ │ ├── check.svg
│ │ ├── chevron-down.svg
│ │ ├── chevron-left.svg
│ │ ├── chevron-right.svg
│ │ ├── chevron-up.svg
│ │ ├── chevrons-left.svg
│ │ ├── chevrons-right.svg
│ │ ├── circle-check.svg
│ │ ├── circle-chevron-left.svg
│ │ ├── circle-chevron-right.svg
│ │ ├── circle-cross.svg
│ │ ├── circle-dash.svg
│ │ ├── circle-minus.svg
│ │ ├── circle-plus.svg
│ │ ├── clock-dash.svg
│ │ ├── code.svg
│ │ ├── collapse.svg
│ │ ├── connectors.svg
│ │ ├── copy.svg
│ │ ├── cross.svg
│ │ ├── database.svg
│ │ ├── dataflow.svg
│ │ ├── download.svg
│ │ ├── draggable.svg
│ │ ├── edit.svg
│ │ ├── expand.svg
│ │ ├── eye-closed.svg
│ │ ├── eye.svg
│ │ ├── file-code.svg
│ │ ├── file-empty.svg
│ │ ├── file-pdf.svg
│ │ ├── file.svg
│ │ ├── filter.svg
│ │ ├── folder.svg
│ │ ├── forbidden.svg
│ │ ├── form.svg
│ │ ├── fullscreen.svg
│ │ ├── gear.svg
│ │ ├── generator.svg
│ │ ├── globe.svg
│ │ ├── graph.svg
│ │ ├── grid.svg
│ │ ├── heart.svg
│ │ ├── help.svg
│ │ ├── history.svg
│ │ ├── home.svg
│ │ ├── image.svg
│ │ ├── images.svg
│ │ ├── info.svg
│ │ ├── key.svg
│ │ ├── knowledge-box.svg
│ │ ├── lab.svg
│ │ ├── label.svg
│ │ ├── labeler.svg
│ │ ├── language.svg
│ │ ├── link.svg
│ │ ├── list-bullet.svg
│ │ ├── list.svg
│ │ ├── lock-filled.svg
│ │ ├── lock-off.svg
│ │ ├── lock.svg
│ │ ├── log-out.svg
│ │ ├── menu.svg
│ │ ├── microphone.svg
│ │ ├── more-horizontal.svg
│ │ ├── more-vertical.svg
│ │ ├── pause.svg
│ │ ├── payment-details.svg
│ │ ├── payment.svg
│ │ ├── pencil.svg
│ │ ├── photo.svg
│ │ ├── play.svg
│ │ ├── plus.svg
│ │ ├── prompt.svg
│ │ ├── puzzle.svg
│ │ ├── question-answer.svg
│ │ ├── refresh.svg
│ │ ├── reload.svg
│ │ ├── repeat.svg
│ │ ├── rephrase.svg
│ │ ├── search-plus.svg
│ │ ├── search.svg
│ │ ├── settings.svg
│ │ ├── share.svg
│ │ ├── shield-check.svg
│ │ ├── smile.svg
│ │ ├── smiley-happy.svg
│ │ ├── smiley-sad.svg
│ │ ├── spreadsheet.svg
│ │ ├── square-arrow.svg
│ │ ├── submenu.svg
│ │ ├── summary.svg
│ │ ├── synonyms.svg
│ │ ├── thumb-down.svg
│ │ ├── thumb-up.svg
│ │ ├── trash.svg
│ │ ├── undo.svg
│ │ ├── unlink.svg
│ │ ├── unlock.svg
│ │ ├── upload-cloud.svg
│ │ ├── upload.svg
│ │ ├── user.svg
│ │ ├── users.svg
│ │ ├── validation.svg
│ │ ├── volume-high.svg
│ │ ├── volume-low.svg
│ │ ├── volume-mute.svg
│ │ ├── warning.svg
│ │ ├── widget.svg
│ │ └── workflows.svg
│ ├── jest.config.js
│ ├── project.json
│ ├── scripts
│ │ ├── generate-sprite.py
│ │ └── update_icons.sh
│ ├── src
│ │ ├── index.ts
│ │ ├── lib
│ │ │ ├── back-button
│ │ │ │ ├── back-button.component.html
│ │ │ │ ├── back-button.component.scss
│ │ │ │ ├── back-button.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── badge
│ │ │ │ ├── badge.component.html
│ │ │ │ ├── badge.component.scss
│ │ │ │ ├── badge.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── button-mini
│ │ │ │ ├── button-mini.component.html
│ │ │ │ ├── button-mini.component.scss
│ │ │ │ ├── button-mini.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── cards
│ │ │ │ ├── action-card
│ │ │ │ │ ├── action-card.component.html
│ │ │ │ │ ├── action-card.component.scss
│ │ │ │ │ ├── action-card.component.ts
│ │ │ │ │ └── index.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── info-card
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── info-card.component.html
│ │ │ │ │ ├── info-card.component.scss
│ │ │ │ │ └── info-card.component.ts
│ │ │ ├── dropdown-button
│ │ │ │ ├── dropdown-button.component.html
│ │ │ │ ├── dropdown-button.component.scss
│ │ │ │ ├── dropdown-button.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── expandable-textarea
│ │ │ │ ├── expandable-textarea.component.html
│ │ │ │ ├── expandable-textarea.component.scss
│ │ │ │ ├── expandable-textarea.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── textarea-modal
│ │ │ │ │ ├── textarea-modal.component.html
│ │ │ │ │ ├── textarea-modal.component.scss
│ │ │ │ │ └── textarea-modal.component.ts
│ │ │ ├── folder-list
│ │ │ │ ├── folder-list.component.html
│ │ │ │ ├── folder-list.component.scss
│ │ │ │ ├── folder-list.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── folder-tree
│ │ │ │ ├── folder-tree.component.html
│ │ │ │ ├── folder-tree.component.ts
│ │ │ │ ├── folder-tree.model.ts
│ │ │ │ ├── folder-tree.state.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── recursive-folder-tree
│ │ │ │ │ ├── recursive-folder-tree.component.html
│ │ │ │ │ ├── recursive-folder-tree.component.scss
│ │ │ │ │ └── recursive-folder-tree.component.ts
│ │ │ ├── home-container
│ │ │ │ ├── home-container.component.scss
│ │ │ │ ├── home-container.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── icons
│ │ │ │ ├── icons.module.ts
│ │ │ │ ├── icons.ts
│ │ │ │ ├── index.ts
│ │ │ │ └── mime-icon.pipe.ts
│ │ │ ├── json-viewer
│ │ │ │ ├── index.ts
│ │ │ │ ├── json-viewer.component.html
│ │ │ │ ├── json-viewer.component.scss
│ │ │ │ └── json-viewer.component.ts
│ │ │ ├── label
│ │ │ │ ├── index.ts
│ │ │ │ ├── label.component.html
│ │ │ │ ├── label.component.scss
│ │ │ │ ├── label.component.spec.ts
│ │ │ │ ├── label.component.ts
│ │ │ │ ├── label.utils.ts
│ │ │ │ └── sis-label.module.ts
│ │ │ ├── labels-expander
│ │ │ │ ├── classification.helpers.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── labels-expander.component.html
│ │ │ │ ├── labels-expander.component.scss
│ │ │ │ └── labels-expander.component.ts
│ │ │ ├── password-input
│ │ │ │ ├── index.ts
│ │ │ │ ├── password-input.component.html
│ │ │ │ ├── password-input.component.scss
│ │ │ │ ├── password-input.component.spec.ts
│ │ │ │ ├── password-input.component.ts
│ │ │ │ └── password-input.module.ts
│ │ │ ├── progress
│ │ │ │ ├── delayed-spinner
│ │ │ │ │ ├── delayed-spinner.component.html
│ │ │ │ │ └── delayed-spinner.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── progress-bar
│ │ │ │ │ ├── progress-bar.component.html
│ │ │ │ │ ├── progress-bar.component.scss
│ │ │ │ │ └── progress-bar.component.ts
│ │ │ │ ├── sis-progress.module.ts
│ │ │ │ └── spinner
│ │ │ │ │ ├── spinner.component.html
│ │ │ │ │ ├── spinner.component.scss
│ │ │ │ │ ├── spinner.component.spec.ts
│ │ │ │ │ └── spinner.component.ts
│ │ │ ├── search-input
│ │ │ │ ├── index.ts
│ │ │ │ ├── search-input.component.html
│ │ │ │ ├── search-input.component.scss
│ │ │ │ └── search-input.component.ts
│ │ │ ├── segmented-buttons
│ │ │ │ ├── index.ts
│ │ │ │ ├── segmented-buttons.component.html
│ │ │ │ ├── segmented-buttons.component.scss
│ │ │ │ └── segmented-buttons.component.ts
│ │ │ ├── sis-modal.service.spec.ts
│ │ │ ├── sis-modal.service.ts
│ │ │ ├── sis-toast.service.spec.ts
│ │ │ ├── sis-toast.service.ts
│ │ │ ├── status
│ │ │ │ ├── index.ts
│ │ │ │ ├── status.component.html
│ │ │ │ ├── status.component.scss
│ │ │ │ └── status.component.ts
│ │ │ ├── sticky-footer
│ │ │ │ ├── index.ts
│ │ │ │ ├── sticky-footer.component.html
│ │ │ │ ├── sticky-footer.component.scss
│ │ │ │ └── sticky-footer.component.ts
│ │ │ └── two-columns-configuration-item
│ │ │ │ ├── index.ts
│ │ │ │ ├── two-columns-configuration-item.component.html
│ │ │ │ ├── two-columns-configuration-item.component.scss
│ │ │ │ └── two-columns-configuration-item.component.ts
│ │ └── test-setup.ts
│ ├── styles
│ │ ├── _apps-common.scss
│ │ ├── _mixins.scss
│ │ ├── _overrides.scss
│ │ └── _variables.scss
│ ├── theme
│ │ ├── _fonts.scss
│ │ ├── fonts
│ │ │ └── _source-code-pro.scss
│ │ └── tokens
│ │ │ ├── _body.tokens.scss
│ │ │ ├── _buttons.tokens.scss
│ │ │ ├── _card.tokens.scss
│ │ │ ├── _chips.tokens.scss
│ │ │ ├── _expander.tokens.scss
│ │ │ ├── _menu.tokens.scss
│ │ │ ├── _modal.tokens.scss
│ │ │ ├── _palette.tokens.scss
│ │ │ ├── _popover.tokens.scss
│ │ │ ├── _scrollbar.tokens.scss
│ │ │ ├── _shadows.tokens.scss
│ │ │ ├── _spacing.tokens.scss
│ │ │ ├── _table.tokens.scss
│ │ │ ├── _tabs.tokens.scss
│ │ │ ├── _textfield.tokens.scss
│ │ │ ├── _toasts.tokens.scss
│ │ │ ├── _toggle.tokens.scss
│ │ │ ├── _typography.tokens.scss
│ │ │ └── _z-index.tokens.scss
│ ├── tsconfig.json
│ ├── tsconfig.lib.json
│ └── tsconfig.spec.json
├── sync
│ ├── .eslintrc.json
│ ├── README.md
│ ├── jest.config.ts
│ ├── project.json
│ ├── src
│ │ ├── assets
│ │ │ └── i18n
│ │ │ │ ├── ca.json
│ │ │ │ ├── en.json
│ │ │ │ ├── es.json
│ │ │ │ └── fr.json
│ │ ├── index.ts
│ │ ├── lib
│ │ │ ├── _common-sync.scss
│ │ │ ├── add-sync-page
│ │ │ │ ├── add-sync-page.component.html
│ │ │ │ ├── add-sync-page.component.scss
│ │ │ │ ├── add-sync-page.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── configuration-form
│ │ │ │ ├── configuration-form.component.html
│ │ │ │ ├── configuration-form.component.scss
│ │ │ │ ├── configuration-form.component.ts
│ │ │ │ ├── configuration.model.ts
│ │ │ │ └── index.ts
│ │ │ ├── folder-selection
│ │ │ │ ├── folder-selection.component.html
│ │ │ │ ├── folder-selection.component.scss
│ │ │ │ ├── folder-selection.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── home-page
│ │ │ │ ├── connector
│ │ │ │ │ ├── connector.component.html
│ │ │ │ │ ├── connector.component.scss
│ │ │ │ │ ├── connector.component.ts
│ │ │ │ │ └── index.ts
│ │ │ │ ├── home-page.component.html
│ │ │ │ ├── home-page.component.scss
│ │ │ │ ├── home-page.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── logic
│ │ │ │ ├── connectors
│ │ │ │ │ ├── confluence.ts
│ │ │ │ │ ├── folder.ts
│ │ │ │ │ ├── oauth.ts
│ │ │ │ │ ├── rss.ts
│ │ │ │ │ ├── sharepoint.ts
│ │ │ │ │ └── sitemap.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── models.ts
│ │ │ │ ├── sync.service.test.ts
│ │ │ │ └── sync.service.ts
│ │ │ ├── sync-details-page
│ │ │ │ ├── folders-tab
│ │ │ │ │ ├── folders-tab.component.html
│ │ │ │ │ ├── folders-tab.component.scss
│ │ │ │ │ └── folders-tab.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── sync-details-page.component.html
│ │ │ │ ├── sync-details-page.component.scss
│ │ │ │ ├── sync-details-page.component.spec.ts
│ │ │ │ ├── sync-details-page.component.ts
│ │ │ │ └── sync-settings
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── sync-settings.component.html
│ │ │ │ │ ├── sync-settings.component.scss
│ │ │ │ │ └── sync-settings.component.ts
│ │ │ ├── sync-root.component.ts
│ │ │ ├── sync.routes.ts
│ │ │ └── utils.ts
│ │ └── test-setup.ts
│ ├── sync.babel
│ ├── tsconfig.json
│ ├── tsconfig.lib.json
│ └── tsconfig.spec.json
└── user
│ ├── .eslintrc.json
│ ├── README.md
│ ├── jest.config.ts
│ ├── project.json
│ ├── src
│ ├── assets
│ │ └── i18n
│ │ │ ├── ca.json
│ │ │ ├── en.json
│ │ │ ├── es.json
│ │ │ └── fr.json
│ ├── index.ts
│ ├── lib
│ │ ├── _user-layout.scss
│ │ ├── callback
│ │ │ ├── callback.component.spec.ts
│ │ │ └── callback.component.ts
│ │ ├── check-mail
│ │ │ ├── check-mail.component.html
│ │ │ ├── check-mail.component.scss
│ │ │ ├── check-mail.component.spec.ts
│ │ │ └── check-mail.component.ts
│ │ ├── consent
│ │ │ ├── consent.component.html
│ │ │ ├── consent.component.scss
│ │ │ ├── consent.component.spec.ts
│ │ │ └── consent.component.ts
│ │ ├── index.ts
│ │ ├── login
│ │ │ ├── login.component.html
│ │ │ ├── login.component.scss
│ │ │ └── login.component.ts
│ │ ├── logout
│ │ │ ├── logout.component.spec.ts
│ │ │ └── logout.component.ts
│ │ ├── magic
│ │ │ ├── magic.component.html
│ │ │ ├── magic.component.ts
│ │ │ └── magic.service.ts
│ │ ├── onboarding
│ │ │ ├── _common-step.scss
│ │ │ ├── embeddings-model-form
│ │ │ │ ├── dynamic-fields.component.scss
│ │ │ │ ├── dynamic-fields.component.ts
│ │ │ │ ├── embeddings-model-form.component.html
│ │ │ │ ├── embeddings-model-form.component.scss
│ │ │ │ ├── embeddings-model-form.component.ts
│ │ │ │ └── index.ts
│ │ │ ├── index.ts
│ │ │ ├── kb-creation-steps
│ │ │ │ ├── embedding-model
│ │ │ │ │ ├── embedding-model-step.component.html
│ │ │ │ │ └── embedding-model-step.component.ts
│ │ │ │ ├── index.ts
│ │ │ │ ├── kb-name
│ │ │ │ │ ├── kb-name-step.component.html
│ │ │ │ │ └── kb-name-step.component.ts
│ │ │ │ ├── vector-database
│ │ │ │ │ ├── vector-database-step.component.html
│ │ │ │ │ └── vector-database-step.component.ts
│ │ │ │ └── zone
│ │ │ │ │ ├── zone-step.component.html
│ │ │ │ │ └── zone-step.component.ts
│ │ │ ├── onboarding.component.html
│ │ │ ├── onboarding.component.scss
│ │ │ ├── onboarding.component.ts
│ │ │ ├── onboarding.models.ts
│ │ │ ├── onboarding.service.ts
│ │ │ ├── setting-up
│ │ │ │ ├── setting-up.component.html
│ │ │ │ ├── setting-up.component.scss
│ │ │ │ └── setting-up.component.ts
│ │ │ ├── step1
│ │ │ │ ├── step1.component.html
│ │ │ │ ├── step1.component.scss
│ │ │ │ └── step1.component.ts
│ │ │ └── vector-database-form
│ │ │ │ ├── index.ts
│ │ │ │ ├── vector-database-form.component.html
│ │ │ │ ├── vector-database-form.component.scss
│ │ │ │ └── vector-database-form.component.ts
│ │ ├── password.validator.ts
│ │ ├── profile
│ │ │ ├── profile.component.html
│ │ │ ├── profile.component.scss
│ │ │ ├── profile.component.spec.ts
│ │ │ └── profile.component.ts
│ │ ├── recover
│ │ │ ├── recover.component.html
│ │ │ ├── recover.component.scss
│ │ │ ├── recover.component.spec.ts
│ │ │ └── recover.component.ts
│ │ ├── reset
│ │ │ ├── reset.component.html
│ │ │ ├── reset.component.scss
│ │ │ ├── reset.component.spec.ts
│ │ │ └── reset.component.ts
│ │ ├── signup
│ │ │ ├── signup.component.html
│ │ │ ├── signup.component.scss
│ │ │ ├── signup.component.spec.ts
│ │ │ └── signup.component.ts
│ │ ├── sso
│ │ │ ├── sso-button.component.html
│ │ │ ├── sso-button.component.scss
│ │ │ ├── sso-button.component.spec.ts
│ │ │ └── sso-button.component.ts
│ │ ├── user-container
│ │ │ ├── index.ts
│ │ │ ├── user-container-logo
│ │ │ │ ├── user-container-logo.component.html
│ │ │ │ ├── user-container-logo.component.scss
│ │ │ │ └── user-container-logo.component.ts
│ │ │ ├── user-container.component.html
│ │ │ ├── user-container.component.scss
│ │ │ ├── user-container.component.spec.ts
│ │ │ ├── user-container.component.ts
│ │ │ └── user-container.module.ts
│ │ └── user.module.ts
│ └── test-setup.ts
│ ├── tsconfig.json
│ ├── tsconfig.lib.json
│ ├── tsconfig.spec.json
│ └── user.babel
├── maintenance
├── assets
│ ├── logo.svg
│ └── maintenance-background.jpg
└── index.html
├── mrs.developer.json
├── nginx
├── app.default.conf
├── auth.default.conf
└── manager.default.conf
├── nx.json
├── package.json
├── test
└── d3.js
├── tools
├── build-sdk-docs.sh
├── build-widgets.sh
├── python-nucliadb-admin-dist
│ ├── MANIFEST.in
│ ├── Makefile
│ ├── README.md
│ ├── VERSION
│ ├── bump.py
│ ├── nucliadb_admin_assets
│ │ └── __init__.py
│ └── setup.py
└── tsconfig.tools.json
├── tsconfig.base.json
└── yarn.lock
/.dockerignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | npm-debug.log
3 | Dockerfile*
4 | docker-compose*
5 | .dockerignore
6 | .git
7 | .gitignore
8 | README.md
9 | LICENSE
10 | .vscode
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | # Editor configuration, see http://editorconfig.org
2 | root = true
3 |
4 | [*]
5 | charset = utf-8
6 | indent_style = space
7 | indent_size = 2
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
11 | [*.md]
12 | max_line_length = off
13 | trim_trailing_whitespace = false
14 |
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | node_modules
2 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | /.yarn/releases/** binary
2 | /.yarn/plugins/** binary
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | # Add files here to ignore them from prettier formatting
2 |
3 | /dist
4 | /coverage
5 | /libs/common/src/assets/i18n
6 | .angular
7 |
8 | /.nx/cache
9 | /.nx/workspace-data
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "printWidth": 120,
3 | "singleQuote": true,
4 | "useTabs": false,
5 | "tabWidth": 2,
6 | "bracketSpacing": true,
7 | "trailingComma": "all",
8 | "bracketSameLine": true,
9 | "singleAttributePerLine": true,
10 | "htmlWhitespaceSensitivity": "ignore"
11 | }
12 |
--------------------------------------------------------------------------------
/.semgrepignore:
--------------------------------------------------------------------------------
1 | Dockerfile
2 | Dockerfile.*
3 | docker-compose.yaml
4 | config/nginx.conf
5 | **/docs
6 | docs/*
7 | **/migrations
8 | apps/*-demo
--------------------------------------------------------------------------------
/.yarnrc.yml:
--------------------------------------------------------------------------------
1 | yarnPath: .yarn/releases/yarn-3.3.1.cjs
2 | nodeLinker: node-modules
3 |
--------------------------------------------------------------------------------
/CODEOWNERS:
--------------------------------------------------------------------------------
1 | * @nuclia/application
2 | * @nuclia/lead
3 |
--------------------------------------------------------------------------------
/Makefile:
--------------------------------------------------------------------------------
1 | base-image:
2 | docker build -t europe-west4-docker.pkg.dev/nuclia-internal/private/base-monorepo:latest . -f docker/Base.Dockerfile
3 | docker push europe-west4-docker.pkg.dev/nuclia-internal/private/base-monorepo:latest
4 |
--------------------------------------------------------------------------------
/apps/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/.gitkeep
--------------------------------------------------------------------------------
/apps/dashboard/VERSION:
--------------------------------------------------------------------------------
1 | 0.0.1
2 |
--------------------------------------------------------------------------------
/apps/dashboard/src/_variables.scss:
--------------------------------------------------------------------------------
1 | @forward '../../../libs/sistema/styles/variables';
2 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/account-arag/account-arag.component.ts:
--------------------------------------------------------------------------------
1 | import { ChangeDetectionStrategy, Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'app-account-arag',
5 | template: `
6 |
7 | `,
8 | changeDetection: ChangeDetectionStrategy.OnPush,
9 | standalone: false,
10 | })
11 | export class AccountAragComponent {}
12 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/account-arag/create-arag/create-arag.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .create-agent-form {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(2);
7 |
8 | label {
9 | @include title-xs();
10 | color: $color-neutral-regular;
11 | margin-bottom: rhythm(0.5);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/account-kbs/account-kbs.component.ts:
--------------------------------------------------------------------------------
1 | import { ChangeDetectionStrategy, Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'account-kbs',
5 | template: `
6 |
7 | `,
8 | changeDetection: ChangeDetectionStrategy.OnPush,
9 | standalone: false,
10 | })
11 | export class AccountKbsComponent {}
12 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/account-kbs/account-kbs.service.ts:
--------------------------------------------------------------------------------
1 | import { Injectable } from '@angular/core';
2 |
3 | @Injectable({
4 | providedIn: 'root',
5 | })
6 | export class AccountKbsService {
7 | constructor() {}
8 | }
9 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/account-kbs/users-dialog/users-dialog.component.html:
--------------------------------------------------------------------------------
1 |
2 | {{ 'account.kb.users' | translate }}
3 |
4 | @if (kb) {
5 |
6 | }
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/account-kbs/users-dialog/users-dialog.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .users-dialog {
4 | position: relative;
5 | padding: rhythm(3);
6 | }
7 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/account-manage/account-delete/account-delete.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | label {
4 | display: block;
5 | margin-bottom: rhythm(1);
6 | }
7 |
8 | .delete-user {
9 | margin: rhythm(4) 0 rhythm(3) 0;
10 | }
11 |
12 | pa-radio {
13 | display: inline-block;
14 | margin-right: rhythm(5);
15 | }
16 |
17 | pa-modal-footer {
18 | gap: rhythm(2);
19 | }
20 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/account-nua/client-dialog/client-dialog.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .nua-form {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(3);
7 | padding-top: rhythm(1);
8 | }
9 |
10 | .zone h4 {
11 | margin-bottom: rhythm(0.25);
12 | }
13 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/billing/billing.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/billing/billing.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .billing {
4 | background-color: $color-neutral-lightest;
5 | }
6 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/billing/features/features.component.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/dashboard/src/app/account/billing/features/features.component.scss
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/billing/my-subscription/unsubscribe.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | h2 {
4 | margin: 0;
5 | text-align: center;
6 | }
7 |
8 | pa-modal-content {
9 | display: flex;
10 | flex-direction: column;
11 | gap: rhythm(4);
12 | }
13 |
14 | .price,
15 | pa-datetime {
16 | color: $color-primary-regular;
17 | }
18 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/billing/review/review.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | pa-modal-content {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(3);
7 | }
8 |
9 | h2 {
10 | margin: 0;
11 | }
12 |
13 | .button-container {
14 | text-align: center;
15 | width: 100%;
16 | }
17 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/billing/subscriptions/aws-subscription/aws-subscription.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | h2 {
4 | margin: 0 0 rhythm(1);
5 | }
6 |
7 | .aws-subscription {
8 | display: flex;
9 | flex-direction: column;
10 | gap: rhythm(6);
11 | }
12 |
13 | .budget {
14 | display: flex;
15 | flex-direction: column;
16 | gap: rhythm(2);
17 | }
18 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/billing/usage/budget.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 | .budget-input {
3 | align-items: center;
4 | color: $color-neutral-regular;
5 | display: flex;
6 | gap: rhythm(1);
7 | }
8 | pa-input {
9 | width: rhythm(14);
10 | }
11 | .action {
12 | margin-top: rhythm(2);
13 | }
14 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/billing/usage/usage.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .usage-container {
4 | max-width: calc(rhythm(90) + rhythm(6));
5 | }
6 |
7 | .budget-form {
8 | display: flex;
9 | flex-direction: column;
10 | gap: rhythm(3);
11 | margin-top: rhythm(6);
12 |
13 | h2 {
14 | margin: 0;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/invite-collaborators-modal/index.ts:
--------------------------------------------------------------------------------
1 | export * from './invite-collaborators-modal.component';
2 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/account/nuclia-tokens/index.ts:
--------------------------------------------------------------------------------
1 | export * from './nuclia-tokens.component';
2 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/activity/log-table-modal.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | pre {
4 | height: 100%;
5 | margin: 0;
6 | }
--------------------------------------------------------------------------------
/apps/dashboard/src/app/app.component.html:
--------------------------------------------------------------------------------
1 |
2 | Version: {{ version }}
3 |
8 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/farewell/farewell.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
{{ 'farewell.thanks_trust' | translate }}
4 |
{{ 'farewell.see_again' | translate }}
5 |
6 |
7 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/farewell/farewell.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .message {
4 | padding-bottom: rhythm(32);
5 | width: rhythm(48);
6 | }
7 |
8 | h1 {
9 | margin: 0;
10 | }
11 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/farewell/farewell.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'app-setup-farewell',
5 | templateUrl: './farewell.component.html',
6 | styleUrls: ['./farewell.component.scss'],
7 | standalone: false,
8 | })
9 | export class FarewellComponent {
10 | constructor() {}
11 | }
12 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/knowledge-box/index.ts:
--------------------------------------------------------------------------------
1 | export * from './knowledge-box/knowledge-box.component';
2 | export * from './knowledge-box-home/knowledge-box-home.component';
3 | export * from './knowledge-box-keys/knowledge-box-keys.component';
4 | export * from './knowledge-box-users';
5 | export * from './service-access/service-access.component';
6 | export * from './knowledge-box.module';
7 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/knowledge-box/knowledge-box-home/kb-usage/usage-modal.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .usage-modal-chart-container {
4 | margin-left: calc(-1 * #{rhythm(2)});
5 | height: 75vh;
6 | width: 75vw;
7 |
8 | .dropdown-container {
9 | margin-left: rhythm(0.5);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/knowledge-box/knowledge-box-keys/knowledge-box-keys.component.html:
--------------------------------------------------------------------------------
1 |
2 |
{{ 'api-key-management.title' | translate }}
3 |
{{ 'api-key-management.description' | translate }}
4 |
5 |
6 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/knowledge-box/knowledge-box-keys/knowledge-box-keys.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .knowledge-box-keys {
4 | h2 {
5 | margin: 0 0 rhythm(0.25) 0;
6 | }
7 |
8 | .warning {
9 | margin-bottom: 30px;
10 | font-style: italic;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/knowledge-box/knowledge-box-users/index.ts:
--------------------------------------------------------------------------------
1 | export * from './knowledge-box-users.component';
2 | export * from './users-manage/users-manage.component';
3 | export * from './users-manage/users-manage.module';
4 | export * from './users-manage/users-manage.service';
5 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/knowledge-box/knowledge-box-users/knowledge-box-users.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | h2 {
4 | margin-bottom: rhythm(6);
5 | }
6 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/knowledge-box/utils.ts:
--------------------------------------------------------------------------------
1 | import { KBRoles } from '@nuclia/core';
2 |
3 | export const SORTED_KB_ROLES: KBRoles[] = ['SMEMBER', 'SCONTRIBUTOR', 'SOWNER'];
4 |
5 | export const KB_ROLE_TITLES: { [role in KBRoles]: string } = {
6 | SOWNER: 'api-key-management.key-roles.manager',
7 | SCONTRIBUTOR: 'api-key-management.key-roles.writer',
8 | SMEMBER: 'api-key-management.key-roles.reader',
9 | };
10 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/lazy-user.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { UserModule, userRoutes } from '@nuclia/user';
4 |
5 | @NgModule({
6 | imports: [UserModule, RouterModule.forChild(userRoutes)],
7 | })
8 | export class LazyUserModule {}
9 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/onboarding/getting-started/getting-started.models.ts:
--------------------------------------------------------------------------------
1 | export type ItemToUpload = {
2 | id: string;
3 | title: string;
4 | file?: File;
5 | link?: string;
6 | uuid?: string;
7 | uploaded?: boolean;
8 | uploadFailed?: boolean;
9 | processing?: boolean;
10 | processed?: boolean;
11 | estimation?: number;
12 | uploadProgress?: number;
13 | rank?: number;
14 | };
15 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/onboarding/getting-started/processing/processing.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .main-container {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(3);
7 | }
8 |
9 | .estimated-time {
10 | margin-top: rhythm(1);
11 |
12 | strong {
13 | font-weight: $font-weight-semi-bold;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/onboarding/welcome-in-existing-kb/welcome-in-existing-kb.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | pa-modal-content .start {
4 | margin-top: rhythm(4);
5 | }
6 |
--------------------------------------------------------------------------------
/apps/dashboard/src/app/styles/js-variables.ts:
--------------------------------------------------------------------------------
1 | export const TOPBAR_HEIGHT = '70px';
2 |
3 | // z-index
4 | export const ZINDEX_SIDEBAR = '900';
5 | export const ZINDEX_SIDEBAR_BACKDROP = '850';
6 |
--------------------------------------------------------------------------------
/apps/dashboard/src/assets/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/dashboard/src/assets/favicon.ico
--------------------------------------------------------------------------------
/apps/dashboard/src/assets/images/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/dashboard/src/assets/images/background.jpg
--------------------------------------------------------------------------------
/apps/dashboard/src/environments/environment.prod.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: true,
3 | client: 'dashboard',
4 | backend: {
5 | social_login: true,
6 | new_api: true,
7 | },
8 | locales: ['en-US', 'es', 'ca'],
9 | };
10 |
--------------------------------------------------------------------------------
/apps/dashboard/src/environments/environment.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: false,
3 | client: 'dashboard',
4 | backend: {
5 | social_login: true,
6 | new_api: true,
7 | },
8 | locales: ['en-US', 'es', 'ca'],
9 | };
10 |
--------------------------------------------------------------------------------
/apps/dashboard/src/environments_config/local-prod/app-config.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "local-prod",
3 | "production": false,
4 | "remoteLogin": true,
5 | "backend": {
6 | "app": "app",
7 | "apiOrigin": "https://nuclia.cloud",
8 | "cdn": "https://cdn.nuclia.cloud",
9 | "apiPath": "/api"
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/apps/dashboard/src/styles.scss:
--------------------------------------------------------------------------------
1 | @use '../../../libs/sistema/styles/apps-common';
2 | @use '../../../libs/pastanaga-angular/projects/pastanaga-angular/src/styles/core';
3 |
4 | :root {
5 | --app-background-color: $color-light-stronger;
6 | }
7 |
8 | .user-background {
9 | background-image: url('./assets/images/background.jpg');
10 | background-position: center;
11 | background-repeat: no-repeat;
12 | background-size: cover;
13 | }
14 |
--------------------------------------------------------------------------------
/apps/dashboard/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
2 |
3 | setupZoneTestEnv();
4 |
--------------------------------------------------------------------------------
/apps/dashboard/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": [],
6 | "target": "ES2022",
7 | "useDefineForClassFields": false
8 | },
9 | "angularCompilerOptions": {},
10 | "files": ["src/main.ts", "src/polyfills.ts"]
11 | }
12 |
--------------------------------------------------------------------------------
/apps/dashboard/tsconfig.editor.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "include": ["**/*.ts", "../../libs/common/src/lib/token-dialog/expiration-modal.component.ts"],
4 | "compilerOptions": {
5 | "types": ["jest", "node"]
6 | },
7 | "angularCompilerOptions": {
8 | "strictTemplates": true
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/apps/dashboard/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": ["jest", "node"],
6 | "resolveJsonModule": true,
7 | "target": "es2016"
8 | },
9 | "angularCompilerOptions": {},
10 | "files": ["src/test.ts", "src/polyfills.ts"],
11 | "include": ["**/*.spec.ts", "**/*.d.ts"]
12 | }
13 |
--------------------------------------------------------------------------------
/apps/manager-v2/VERSION:
--------------------------------------------------------------------------------
1 | 0.0.1
2 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/_variables.scss:
--------------------------------------------------------------------------------
1 | @import '../../../libs/sistema/styles/variables';
2 | $header-height: rhythm(8);
3 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/app.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Version: {{ version }}
4 |
9 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/account-details.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/manager-v2/src/variables' as *;
2 |
3 | .account-info {
4 | background: $color-neutral-lightest;
5 | display: flex;
6 | flex-direction: column;
7 | gap: rhythm(1);
8 | margin: rhythm(1) rhythm(2) rhythm(2);
9 | padding: rhythm(1);
10 | }
11 |
12 | .zone-name {
13 | color: $color-neutral-regular;
14 | }
15 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/blocked-features/blocked-features.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/manager-v2/src/variables' as *;
2 |
3 | :host {
4 | form {
5 | gap: rhythm(1);
6 | }
7 | pa-checkbox ::ng-deep .pa-toggle-label {
8 | text-transform: capitalize;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/blocked-features/feature-name.pipe.ts:
--------------------------------------------------------------------------------
1 | import { Pipe, PipeTransform } from '@angular/core';
2 |
3 | @Pipe({
4 | name: 'featureName',
5 | standalone: false,
6 | })
7 | export class FeatureNamePipe implements PipeTransform {
8 | transform(value: string): string {
9 | return value.replace('_', ' ');
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/configuration/configuration.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/manager-v2/src/variables' as *;
2 |
3 | form {
4 | gap: rhythm(3);
5 | }
6 |
7 | .account-type-container {
8 | display: flex;
9 | gap: rhythm(1);
10 |
11 | pa-select {
12 | flex: 1 0 auto;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/kb-details/kb-details.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/manager-v2/src/variables' as *;
2 |
3 | :host {
4 | form {
5 | margin-bottom: rhythm(4);
6 | }
7 |
8 | .add-member {
9 | margin-bottom: rhythm(3);
10 | max-width: rhythm(40);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/limits/limits.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/manager-v2/src/variables' as *;
2 |
3 | .limit-form {
4 | position: relative;
5 |
6 | .reset-actions {
7 | display: flex;
8 | gap: rhythm(1);
9 | left: rhythm(64);
10 | position: absolute;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/models/models.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/manager-v2/src/variables' as *;
2 |
3 | .header {
4 | align-items: center;
5 | display: flex;
6 | justify-content: space-between;
7 | }
8 |
9 | .zone {
10 | margin-bottom: rhythm(4);
11 | }
12 |
13 | .title-s {
14 | margin-bottom: rhythm(1);
15 | }
16 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/payment-links/payment-links.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/manager-v2/src/variables' as *;
2 |
3 | form {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(4);
7 | }
8 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/token-consumption/token-consumption.models.ts:
--------------------------------------------------------------------------------
1 | export type ConsumptionType = 'question_answer' | 'rephrase' | 'summarize' | 'extract_tables' | 'sentence' | 'token';
2 | export type ConsumptionSource = 'predict' | 'nucliadb' | 'processor';
3 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/account-details/users/users.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/manager-v2/src/variables' as *;
2 |
3 | :host {
4 | .manager-container {
5 | text-align: center;
6 | width: 100%;
7 | }
8 |
9 | .add-member {
10 | margin-bottom: rhythm(3);
11 | max-width: rhythm(40);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/form-footer/form-footer.component.html:
--------------------------------------------------------------------------------
1 |
14 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/form-footer/form-footer.component.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/manager-v2/src/app/manage-accounts/form-footer/form-footer.component.scss
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-accounts/manage-accounts.component.ts:
--------------------------------------------------------------------------------
1 | import { ChangeDetectionStrategy, Component } from '@angular/core';
2 |
3 | @Component({
4 | template: '',
5 | changeDetection: ChangeDetectionStrategy.OnPush,
6 | standalone: false,
7 | })
8 | export class ManageAccountsComponent {}
9 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-users/manage-users.component.ts:
--------------------------------------------------------------------------------
1 | import { ChangeDetectionStrategy, Component } from '@angular/core';
2 |
3 | @Component({
4 | template: '',
5 | changeDetection: ChangeDetectionStrategy.OnPush,
6 | standalone: false,
7 | })
8 | export class ManageUsersComponent {}
9 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-users/user-details/user-details.component.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/manager-v2/src/app/manage-users/user-details/user-details.component.scss
--------------------------------------------------------------------------------
/apps/manager-v2/src/app/manage-zones/manage-zones.component.ts:
--------------------------------------------------------------------------------
1 | import { ChangeDetectionStrategy, Component } from '@angular/core';
2 |
3 | @Component({
4 | template: '',
5 | changeDetection: ChangeDetectionStrategy.OnPush,
6 | standalone: false,
7 | })
8 | export class ManageZonesComponent {}
9 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/manager-v2/src/assets/.gitkeep
--------------------------------------------------------------------------------
/apps/manager-v2/src/assets/background_manager.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/manager-v2/src/assets/background_manager.jpg
--------------------------------------------------------------------------------
/apps/manager-v2/src/assets/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/manager-v2/src/assets/favicon.ico
--------------------------------------------------------------------------------
/apps/manager-v2/src/environments/environment.prod.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: true,
3 | backend: {
4 | social_login: false,
5 | new_api: true,
6 | },
7 | };
8 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/environments/environment.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: false,
3 | backend: {
4 | social_login: false,
5 | new_api: true,
6 | },
7 | };
8 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/main.ts:
--------------------------------------------------------------------------------
1 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
2 | import { AppModule } from './app/app.module';
3 |
4 | platformBrowserDynamic()
5 | .bootstrapModule(AppModule)
6 | .catch((err) => console.error(err));
7 |
--------------------------------------------------------------------------------
/apps/manager-v2/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
2 |
3 | setupZoneTestEnv();
4 |
--------------------------------------------------------------------------------
/apps/manager-v2/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": []
6 | },
7 | "files": ["src/main.ts"],
8 | "include": ["src/**/*.d.ts"],
9 | "exclude": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts"]
10 | }
11 |
--------------------------------------------------------------------------------
/apps/manager-v2/tsconfig.editor.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "include": ["src/**/*.ts"],
4 | "compilerOptions": {
5 | "types": ["jest", "node"]
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/apps/manager-v2/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "module": "commonjs",
6 | "target": "es2016",
7 | "types": ["jest", "node"]
8 | },
9 | "files": ["src/test-setup.ts"],
10 | "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"]
11 | }
12 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/VERSION:
--------------------------------------------------------------------------------
1 | 0.0.1
2 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/src/_variables.scss:
--------------------------------------------------------------------------------
1 | @import '../../../libs/sistema/styles/variables';
2 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/src/app/app.component.html:
--------------------------------------------------------------------------------
1 |
2 | Version: {{ version }}
3 |
8 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/src/assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/nucliadb-admin/src/assets/.gitkeep
--------------------------------------------------------------------------------
/apps/nucliadb-admin/src/environments/environment.prod.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: true,
3 | standalone: true,
4 | };
5 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/src/environments/environment.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: false,
3 | client: 'dashboard',
4 | locales: ['en-US', 'es', 'ca'],
5 | standalone: true,
6 | };
7 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/src/styles.scss:
--------------------------------------------------------------------------------
1 | @use '../../../libs/sistema/styles/apps-common';
2 | @use '../../../libs/pastanaga-angular/projects/pastanaga-angular/src/styles/core';
3 |
4 | :root {
5 | --app-background-color: $color-light-stronger;
6 | }
7 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
2 |
3 | setupZoneTestEnv();
4 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": [],
6 | "target": "ES2022",
7 | "useDefineForClassFields": false
8 | },
9 | "files": ["src/main.ts", "src/polyfills.ts"],
10 | "include": ["src/**/*.d.ts"],
11 | "exclude": ["jest.config.ts", "**/*.test.ts", "**/*.spec.ts"]
12 | }
13 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/tsconfig.editor.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "include": ["**/*.ts"],
4 | "compilerOptions": {
5 | "types": ["jest", "node"]
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/apps/nucliadb-admin/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "module": "commonjs",
6 | "types": ["jest", "node"],
7 | "resolveJsonModule": true,
8 | "target": "es2016"
9 | },
10 | "files": ["src/test-setup.ts"],
11 | "include": ["jest.config.ts", "**/*.test.ts", "**/*.spec.ts", "**/*.d.ts"]
12 | }
13 |
--------------------------------------------------------------------------------
/apps/search-widget-demo/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/apps/search-widget-demo/README.md:
--------------------------------------------------------------------------------
1 | # Search widget demo
2 |
3 | This app allows to test the search widget in dev mode.
4 |
5 | ## Usage
6 |
7 | Run the app:
8 |
9 | ```
10 | nx serve search-widget-demo
11 | ```
12 |
--------------------------------------------------------------------------------
/apps/search-widget-demo/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
8 | Search demo
9 |
10 |
11 |
12 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/apps/search-widget-demo/src/main.ts:
--------------------------------------------------------------------------------
1 | import App from './App.svelte';
2 | import { mount } from 'svelte';
3 |
4 | const app = mount(App, {
5 | target: document.getElementById('app'),
6 | });
7 |
8 | export default app;
9 |
--------------------------------------------------------------------------------
/apps/search-widget-demo/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | ///
3 |
--------------------------------------------------------------------------------
/apps/search-widget-demo/tsconfig.node.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "composite": true,
4 | "skipLibCheck": true,
5 | "module": "ESNext",
6 | "moduleResolution": "bundler"
7 | },
8 | "include": ["vite.config.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/_variables.scss:
--------------------------------------------------------------------------------
1 | @forward '../../../libs/sistema/styles/variables';
2 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/pastanaga-pages-override/index.ts:
--------------------------------------------------------------------------------
1 | export * from './sistema-confirmation-dialog/sistema-confirmation-dialog.component';
2 | export * from './sistema-icons/sistema-icons.component';
3 | export * from './sistema-modal';
4 | export * from './sistema-scrollbar/sistema-scrollbar.component';
5 | export * from './sistema-toasts/sistema-toast.component';
6 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/pastanaga-pages-override/sistema-modal/index.ts:
--------------------------------------------------------------------------------
1 | export * from './dialog-example/dialog-example.component';
2 | export * from './modal-example/modal-example.component';
3 | export * from './sistema-modal.component';
4 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/pastanaga-pages-override/sistema-modal/modal-example/modal-example.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../../../variables' as *;
2 |
3 | .form-container {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(1.5);
7 | }
8 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/pastanaga-pages-override/sistema-modal/sistema-modal.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../../variables' as *;
2 |
3 | .open-modal-button {
4 | margin-bottom: rhythm(1);
5 | }
6 |
7 | .nested {
8 | list-style: none;
9 | margin-bottom: rhythm(1);
10 | }
11 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/pastanaga-pages-override/sistema-scrollbar/sistema-scrollbar.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../../variables' as *;
2 |
3 | .pa-scrollable {
4 | padding: 0 rhythm(3);
5 | }
6 |
7 | .grey-background {
8 | background: $color-neutral-lighter;
9 | margin-top: rhythm(4);
10 | }
11 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/sistema-back-button/sistema-back-button.component.ts:
--------------------------------------------------------------------------------
1 | import { ChangeDetectionStrategy, Component } from '@angular/core';
2 |
3 | @Component({
4 | templateUrl: './sistema-back-button.component.html',
5 | changeDetection: ChangeDetectionStrategy.OnPush,
6 | standalone: false,
7 | })
8 | export class SistemaBackButtonComponent {
9 | code = `Back`;
10 | }
11 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/sistema-badge/sistema-badge.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../variables' as *;
2 |
3 | .flex-container {
4 | display: flex;
5 | gap: rhythm(1);
6 | margin-bottom: rhythm(3);
7 | }
8 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/sistema-cards/sistema-action-card.component.scss:
--------------------------------------------------------------------------------
1 | $gap: 24px;
2 | .card-container {
3 | display: flex;
4 | gap: $gap;
5 | flex-wrap: wrap;
6 | margin-right: 0;
7 |
8 | > * {
9 | width: calc((100% - #{$gap} * 2) / 3);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/sistema-dropdown-button/sistema-dropdown-button.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../variables' as *;
2 |
3 | .dropdown-container {
4 | display: flex;
5 | align-items: center;
6 | gap: rhythm(2);
7 | flex-wrap: wrap;
8 | }
9 | .options {
10 | margin-top: rhythm(3);
11 | }
12 |
13 | nsi-dropdown-button {
14 | flex: 1 0 auto;
15 | margin-top: rhythm(1);
16 | min-width: rhythm(16);
17 | }
18 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/sistema-password-input/sistema-password-input.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../variables' as *;
2 |
3 | .options {
4 | margin-top: rhythm(4);
5 | }
6 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/sistema-pages/sistema-search-input/sistema-search-input.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../variables' as *;
2 |
3 | .options {
4 | margin-top: rhythm(4);
5 | }
6 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/app/welcome-page/welcome-page.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, ChangeDetectionStrategy } from '@angular/core';
2 |
3 | @Component({
4 | templateUrl: './welcome-page.component.html',
5 | changeDetection: ChangeDetectionStrategy.OnPush,
6 | standalone: false,
7 | })
8 | export class WelcomePageComponent {}
9 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/sistema-demo/src/assets/.gitkeep
--------------------------------------------------------------------------------
/apps/sistema-demo/src/e2e/small.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Small
6 |
7 |
8 | Not much to see here, so it’s quick to process…
9 |
10 |
11 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/environments/environment.prod.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: true,
3 | };
4 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/environments/environment.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: false,
3 | };
4 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/apps/sistema-demo/src/favicon.ico
--------------------------------------------------------------------------------
/apps/sistema-demo/src/pastanaga-component-overrides.scss:
--------------------------------------------------------------------------------
1 | @forward '../../../libs/sistema/theme/pastanaga-component-overrides';
2 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/pastanaga-core-overrides.scss:
--------------------------------------------------------------------------------
1 | @forward '../../../libs/sistema/theme/pastanaga-core-overrides';
2 |
--------------------------------------------------------------------------------
/apps/sistema-demo/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
2 |
3 | setupZoneTestEnv();
4 |
--------------------------------------------------------------------------------
/apps/sistema-demo/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": [],
6 | "target": "ES2022",
7 | "resolveJsonModule": true,
8 | "useDefineForClassFields": false
9 | },
10 | "files": ["src/main.ts", "src/polyfills.ts"],
11 | "include": ["src/**/*.d.ts"],
12 | "exclude": ["**/*.test.ts", "**/*.spec.ts"]
13 | }
14 |
--------------------------------------------------------------------------------
/apps/sistema-demo/tsconfig.editor.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "include": ["**/*.ts"],
4 | "compilerOptions": {
5 | "types": ["jest", "node"]
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/apps/sistema-demo/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "module": "commonjs",
6 | "types": ["jest", "node"],
7 | "target": "es2016"
8 | },
9 | "files": ["src/test-setup.ts"],
10 | "include": ["**/*.test.ts", "**/*.spec.ts", "**/*.d.ts"]
11 | }
12 |
--------------------------------------------------------------------------------
/charts/app/Chart.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | description: Flaps App
3 | name: app
4 | sources:
5 | - https://github.com/stashify/frontend
6 | maintainers:
7 | - name: Application
8 | email: ramon@flaps.io
9 | version: 99999.99999.99999
10 | appVersion: 99999.99999.99999
11 |
--------------------------------------------------------------------------------
/charts/app/templates/app.pdb.yaml:
--------------------------------------------------------------------------------
1 | {{- if .Values.podDisruptionBudget.enabled -}}
2 | ---
3 | apiVersion: policy/v1
4 | kind: PodDisruptionBudget
5 | metadata:
6 | name: {{ .Release.Name }}
7 | spec:
8 | maxUnavailable: 1
9 | selector:
10 | matchExpressions:
11 | - key: app
12 | operator: In
13 | values:
14 | - {{ .Chart.Name }}
15 | {{- end -}}
--------------------------------------------------------------------------------
/charts/manager/Chart.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | description: Manager Frontend App
3 | name: manager
4 | sources:
5 | - https://github.com/nuclia/frontend
6 | maintainers:
7 | - name: Application
8 | email: ramon@stashify.net
9 | version: 99999.99999.99999
10 | appVersion: 99999.99999.99999
11 |
--------------------------------------------------------------------------------
/charts/manager/templates/manager.pdb.yaml:
--------------------------------------------------------------------------------
1 | {{- if .Values.podDisruptionBudget.enabled -}}
2 | ---
3 | apiVersion: policy/v1
4 | kind: PodDisruptionBudget
5 | metadata:
6 | name: {{ .Release.Name }}
7 | spec:
8 | maxUnavailable: 1
9 | selector:
10 | matchExpressions:
11 | - key: app
12 | operator: In
13 | values:
14 | - {{ .Release.Name }}
15 | {{- end -}}
--------------------------------------------------------------------------------
/cypress.json:
--------------------------------------------------------------------------------
1 | {}
2 |
--------------------------------------------------------------------------------
/docker/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM nginx:1
2 | WORKDIR /root/
3 |
4 | ARG appFolder
5 | ARG appId
6 | ARG noRelativeCss
7 |
8 | COPY ./dist/apps/${appFolder} /dist
9 | RUN if [ -n "$noRelativeCss" ]; then sed -i 's/href="styles/href="\/styles/g' /dist/index.html; fi
10 |
11 | COPY nginx/${appId}.default.conf /etc/nginx/conf.d/default.conf
12 | COPY docker/30-environment-${appId}.sh /docker-entrypoint.d/30-environment-${appId}.sh
13 |
--------------------------------------------------------------------------------
/jest.config.js:
--------------------------------------------------------------------------------
1 | const { getJestProjects } = require('@nx/jest');
2 |
3 | module.exports = { projects: [...getJestProjects()] };
4 |
--------------------------------------------------------------------------------
/jest.preset.js:
--------------------------------------------------------------------------------
1 | const nxPreset = require('@nx/jest/preset');
2 | module.exports = {
3 | ...nxPreset,
4 | testMatch: ['**/+(*.)+(spec|test).+(ts|js)?(x)'],
5 | transform: {
6 | '^.+\\.(ts|js|html)$': 'ts-jest',
7 | },
8 | resolver: '@nx/jest/plugins/resolver',
9 | moduleFileExtensions: ['ts', 'js', 'html'],
10 | coverageReporters: ['html'],
11 | moduleNameMapper: {
12 | '^d3$': '/../../test/d3.js',
13 | },
14 | };
15 |
--------------------------------------------------------------------------------
/libs/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/.gitkeep
--------------------------------------------------------------------------------
/libs/chrome-ext/README.md:
--------------------------------------------------------------------------------
1 | # Nuclia Tools
2 |
3 | Extension for Chrome browser.
4 |
5 | ## Local installation
6 |
7 | ```
8 | nx build chrome-ext
9 | ```
10 |
11 | The extension files are created at: `dist/libs/chrome-ext/`
12 |
13 | Then follow [these steps](https://developer.chrome.com/docs/extensions/get-started/tutorial/hello-world#load-unpacked) to install the extension.
14 |
--------------------------------------------------------------------------------
/libs/chrome-ext/src/lib/icons/error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/chrome-ext/src/lib/icons/error.png
--------------------------------------------------------------------------------
/libs/chrome-ext/src/lib/icons/icon128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/chrome-ext/src/lib/icons/icon128.png
--------------------------------------------------------------------------------
/libs/chrome-ext/src/lib/icons/icon16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/chrome-ext/src/lib/icons/icon16.png
--------------------------------------------------------------------------------
/libs/chrome-ext/src/lib/icons/icon32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/chrome-ext/src/lib/icons/icon32.png
--------------------------------------------------------------------------------
/libs/chrome-ext/src/lib/icons/icon48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/chrome-ext/src/lib/icons/icon48.png
--------------------------------------------------------------------------------
/libs/chrome-ext/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "module": "commonjs",
6 | "types": ["jest", "node"]
7 | },
8 | "include": ["**/*.test.ts", "**/*.spec.ts", "**/*.d.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/libs/common/README.md:
--------------------------------------------------------------------------------
1 | # common
2 |
3 | This library was generated with [Nx](https://nx.dev).
4 |
5 | ## Running unit tests
6 |
7 | Run `nx test common` to execute the unit tests.
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/ai-models/ai-models.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .ai-models {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(4);
7 | }
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/ai-models/answer-generation/index.ts:
--------------------------------------------------------------------------------
1 | export * from './answer-generation.component';
2 | export * from './user-keys/user-keys.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/ai-models/answer-generation/user-keys/user-keys.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .subfields {
4 | padding-top: rhythm(2);
5 | margin-left: rhythm(2);
6 | }
7 |
--------------------------------------------------------------------------------
/libs/common/src/lib/ai-models/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ai-models.component';
2 | export * from './answer-generation';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/base/base.component.html:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
8 |
9 |
12 |
--------------------------------------------------------------------------------
/libs/common/src/lib/base/base.component.scss:
--------------------------------------------------------------------------------
1 | .base-container {
2 | height: 100%;
3 | padding-top: var(--app-topbar-height);
4 | }
5 |
--------------------------------------------------------------------------------
/libs/common/src/lib/base/dashboard-layout/dashboard-layout.service.ts:
--------------------------------------------------------------------------------
1 | import { computed, Injectable, signal } from '@angular/core';
2 |
3 | @Injectable({
4 | providedIn: 'root',
5 | })
6 | export class DashboardLayoutService {
7 | private _collapsedNav = signal(false);
8 | collapsedNav = computed(() => this._collapsedNav());
9 |
10 | toggleNav() {
11 | this._collapsedNav.set(!this._collapsedNav());
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/common/src/lib/base/dashboard-layout/index.ts:
--------------------------------------------------------------------------------
1 | export * from './dashboard-layout.component';
2 | export * from './dashboard-layout.service';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/base/empty.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | template: '',
5 | standalone: true,
6 | })
7 | export class EmptyComponent {
8 | constructor() {}
9 | }
10 |
--------------------------------------------------------------------------------
/libs/common/src/lib/base/index.ts:
--------------------------------------------------------------------------------
1 | export * from './base.component';
2 | export * from './base.module';
3 | export * from './dashboard-layout';
4 | export * from './empty.component';
5 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/bar-chart/bar-chart.component.html:
--------------------------------------------------------------------------------
1 |
5 |
10 | {{ tooltipContent | number: undefined:locale }}
11 |
12 |
13 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/bar-chart/bar-chart.component.scss:
--------------------------------------------------------------------------------
1 | @use '../charts-common' as charts;
2 | @use 'apps/dashboard/src/variables' as *;
3 |
4 | .bar-chart {
5 | @include charts.chart();
6 |
7 | .bar {
8 | fill: $color-primary-regular;
9 | opacity: 0.3;
10 | &:last-child {
11 | opacity: 1;
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/bar-chart/grouped-bar-chart.component.html:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/bar-chart/grouped-bar-chart.component.scss:
--------------------------------------------------------------------------------
1 | @use '../charts-common' as charts;
2 |
3 | .range-chart {
4 | @include charts.chart();
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/bar-chart/index.ts:
--------------------------------------------------------------------------------
1 | export * from './bar-chart.component';
2 | export * from './grouped-bar-chart.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/empty-chart/empty-chart.component.html:
--------------------------------------------------------------------------------
1 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/index.ts:
--------------------------------------------------------------------------------
1 | export * from './bar-chart';
2 | export * from './empty-chart/empty-chart.component';
3 | export * from './line-chart/line-chart.component';
4 | export * from './range-chart';
5 | export * from './chart-utils';
6 | export * from './charts.module';
7 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/line-chart/line-chart.component.scss:
--------------------------------------------------------------------------------
1 | @use '../charts-common' as charts;
2 | @use 'apps/dashboard/src/variables' as *;
3 |
4 | .line-chart {
5 | @include charts.chart();
6 |
7 | .data-line {
8 | stroke: $color-primary-regular;
9 | }
10 |
11 | .data-area {
12 | fill: $color-primary-lightest;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/range-chart/index.ts:
--------------------------------------------------------------------------------
1 | export * from './range.models';
2 | export * from './range-chart.component';
3 | export * from './range-evolution-chart.component';
4 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/range-chart/range-chart.component.html:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/range-chart/range-evolution-chart.component.scss:
--------------------------------------------------------------------------------
1 | @use '../charts-common' as charts;
2 | @use 'apps/dashboard/src/variables' as *;
3 |
4 | .range-chart {
5 | @include charts.chart();
6 |
7 | .range-area {
8 | fill: $color-primary-lightest;
9 | }
10 |
11 | .evolution-line {
12 | fill: none;
13 | stroke: $color-primary-regular;
14 | stroke-width: 1.5;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/libs/common/src/lib/charts/range-chart/range.models.ts:
--------------------------------------------------------------------------------
1 | export interface RangeChartData {
2 | category: string;
3 | average: number;
4 | min: number;
5 | max: number;
6 | }
7 |
8 | export interface DatedRangeChartData {
9 | timestamp: string;
10 | average: number;
11 | min: number;
12 | max: number;
13 | }
14 |
--------------------------------------------------------------------------------
/libs/common/src/lib/directives/directives.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 |
3 | import { STFPerfectScrollbarDirective } from './perfect-scroll/perfect-scrollbar.directive';
4 |
5 | @NgModule({
6 | declarations: [STFPerfectScrollbarDirective],
7 | exports: [STFPerfectScrollbarDirective],
8 | })
9 | export class STFDirectivesModule {}
10 |
--------------------------------------------------------------------------------
/libs/common/src/lib/directives/index.ts:
--------------------------------------------------------------------------------
1 | export * from './directives.module';
2 | export * from './perfect-scroll/perfect-scrollbar.directive';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/entities/entity/entity.component.html:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/entities/entity/entity.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .entity {
4 | align-items: center;
5 | border-radius: rhythm(0.5);
6 | display: inline-flex;
7 | height: rhythm(2.5);
8 | padding: rhythm(0.25);
9 | &.border {
10 | border: 1px solid $color-neutral-lighter;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/libs/common/src/lib/entities/index.ts:
--------------------------------------------------------------------------------
1 | export * from './entities.component';
2 | export * from './entities.module';
3 | export * from './entity-list/entity-list.component';
4 | export * from './model';
5 | export * from './ner.service';
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/features/index.ts:
--------------------------------------------------------------------------------
1 | export * from './features-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/guards/index.ts:
--------------------------------------------------------------------------------
1 | export * from './auth.interceptor';
2 | export * from './permission.guard';
3 | export * from './root.guard';
4 | export * from './select-account.guard';
5 | export * from './select-kb.guard';
6 | export * from './set-account.guard';
7 | export * from './set-agent.guard';
8 | export * from './set-kb.guard';
9 | export * from './set-local-kb.guard';
10 |
11 | export * from './agent-feature-enabled.guard';
12 |
--------------------------------------------------------------------------------
/libs/common/src/lib/guards/root.guard.ts:
--------------------------------------------------------------------------------
1 | import { inject } from '@angular/core';
2 | import { NavigationService } from '@flaps/core';
3 |
4 | export const rootGuard = () => {
5 | const navigation: NavigationService = inject(NavigationService);
6 | navigation.goToLandingPage();
7 | return false;
8 | };
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/hint/index.ts:
--------------------------------------------------------------------------------
1 | export * from './hint.component';
2 | export * from './hint.module';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/kb-creation/index.ts:
--------------------------------------------------------------------------------
1 | export * from './kb-creation.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/knowledge-box-settings/index.ts:
--------------------------------------------------------------------------------
1 | export * from './knowledge-box-settings.component';
2 | export * from './knowledge-box-settings.module';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/metrics/index.ts:
--------------------------------------------------------------------------------
1 | export * from './metrics-page.component';
2 | export * from './remi-metrics.service';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/metrics/missing-knowledge-details/missing-knowledge-details.component.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/common/src/lib/metrics/missing-knowledge-details/missing-knowledge-details.component.scss
--------------------------------------------------------------------------------
/libs/common/src/lib/navbar/index.ts:
--------------------------------------------------------------------------------
1 | export * from './navbar.component';
2 | export * from './navbar.module';
3 | export * from './small-navbar.directive';
4 |
--------------------------------------------------------------------------------
/libs/common/src/lib/page-not-found/index.ts:
--------------------------------------------------------------------------------
1 | export * from './page-not-found.module';
2 | export * from './page-not-found.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/pagination/index.ts:
--------------------------------------------------------------------------------
1 | export * from './pagination.component';
2 | export * from './pagination.module';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/pagination/pagination.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .pagination {
4 | align-items: center;
5 | display: flex;
6 | gap: rhythm(2);
7 | justify-content: center;
8 | }
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/pipes/index.ts:
--------------------------------------------------------------------------------
1 | export * from './format-date.pipe';
2 | export * from './format-duration.pipe';
3 | export * from './format-eta.pipe';
4 | export * from './format-time.pipe';
5 | export * from './generative-model.pipe';
6 | export * from './line-break-formatter.pipe';
7 | export * from './pipes.module';
8 | export * from './safe-html.pipe';
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/pipes/line-break-formatter.pipe.ts:
--------------------------------------------------------------------------------
1 | import { Pipe, PipeTransform } from '@angular/core';
2 |
3 | const LINE_BREAK = /\n/g;
4 |
5 | @Pipe({
6 | name: 'lineBreakFormatter',
7 | standalone: true,
8 | })
9 | export class LineBreakFormatterPipe implements PipeTransform {
10 | transform(value: string): string {
11 | return value.replace(LINE_BREAK, '
');
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/common/src/lib/rag-lab/index.ts:
--------------------------------------------------------------------------------
1 | export * from './prompt-lab';
2 | export * from './question-block';
3 | export * from './rag-lab.component';
4 | export * from './rag-lab.service';
5 | export * from './rag-lab-page.component';
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/rag-lab/loading-dialog/index.ts:
--------------------------------------------------------------------------------
1 | export * from './loading-dialog.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/rag-lab/loading-dialog/loading-dialog.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../../../sistema/styles/variables' as *;
2 |
3 | .pa-confirmation-dialog {
4 | padding: rhythm(3);
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/rag-lab/prompt-lab/index.ts:
--------------------------------------------------------------------------------
1 | export * from './prompt-lab.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/rag-lab/question-block/index.ts:
--------------------------------------------------------------------------------
1 | export * from './question-block.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/rag-lab/rag-lab-page.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .rag-lab-page {
4 | .page-header {
5 | margin-bottom: rhythm(5);
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/annotation/index.ts:
--------------------------------------------------------------------------------
1 | export * from './paragraph-annotation/paragraph-annotation.component';
2 | export * from './paragraph-annotation/paragraph-annotation.service';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/annotation/relations/relations.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .title-s {
4 | margin-bottom: rhythm(0.5);
5 | }
6 |
7 | .relations {
8 | display: flex;
9 | flex-direction: column;
10 | gap: rhythm(0.5);
11 | margin-bottom: rhythm(3);
12 | }
13 |
14 | .relation {
15 | display: flex;
16 | gap: rhythm(0.5);
17 | flex-wrap: wrap;
18 | }
19 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/classification/index.ts:
--------------------------------------------------------------------------------
1 | export * from './paragraph-classification';
2 | export * from './resource-classification.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/classification/paragraph-classification/index.ts:
--------------------------------------------------------------------------------
1 | export * from './paragraph-classification.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/preview/index.ts:
--------------------------------------------------------------------------------
1 | export * from './preview.component';
2 | export * from './preview.service';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/preview/preview-table.component.html:
--------------------------------------------------------------------------------
1 | @if (renderedMarkdown) {
2 |
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/preview/preview-table.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 | @use '../edit-resource.tokens' as tokens;
3 |
4 | .markdown-table {
5 | max-width: calc(tokens.$width-page-content - rhythm(3));
6 | overflow-x: auto;
7 | ::ng-deep table {
8 | td,
9 | th {
10 | border: 1px solid $color-neutral-light;
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/preview/warning-modal/warning-modal.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | h2 {
4 | margin: 0;
5 | }
6 |
7 | .table-container {
8 | max-width: rhythm(80);
9 | padding-bottom: rhythm(6);
10 | }
11 |
12 | .message {
13 | overflow-wrap: break-word;
14 | }
15 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/profile/index.ts:
--------------------------------------------------------------------------------
1 | export * from './file/file.component';
2 | export * from './link/link.component';
3 | export * from './text/text.component';
4 | export * from './profile.component';
5 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/edit-resource/profile/profile.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .form-section {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(3);
7 | padding: rhythm(3) 0;
8 |
9 | &.extra-metadata-container {
10 | gap: rhythm(1);
11 | }
12 | }
13 |
14 | .right-panel-container {
15 | width: rhythm(40);
16 | }
17 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/index.ts:
--------------------------------------------------------------------------------
1 | export * from './edit-resource';
2 | export * from './resource-filters.utils';
3 | export * from './resource-list';
4 | export * from './resource-viewer.service';
5 | export * from './resources.component';
6 | export * from './resources.module';
7 | export * from './upload-button';
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/resource-list/error-resources-table/error-resources-table.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .errors-cell {
4 | overflow-wrap: break-word;
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/resources.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | template: '',
5 | standalone: false,
6 | })
7 | export class ResourcesComponent {}
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/resources/upload-button/index.ts:
--------------------------------------------------------------------------------
1 | export * from './upload-button.component';
2 | export * from './upload-dialog.service';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/index.ts:
--------------------------------------------------------------------------------
1 | export * from './agent-dashboard.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/basic-elements/link/index.ts:
--------------------------------------------------------------------------------
1 | export * from './link.component';
2 | export * from './link.service';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/basic-elements/node-selector/node-selector.component.html:
--------------------------------------------------------------------------------
1 |
2 | {{ nodeTitle() }}
3 |
4 | @if (icon(); as icon) {
5 |
8 | }
9 |
10 | {{ description() }}
11 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/index.ts:
--------------------------------------------------------------------------------
1 | export * from './basic-elements';
2 | export * from './nodes';
3 | export * from './sidebar';
4 | export * from './workflow.effects';
5 | export * from './workflow.models';
6 | export * from './workflow.service';
7 | export * from './workflow.state';
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/ask/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ask-form.component';
2 | export * from './ask-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/conditional/index.ts:
--------------------------------------------------------------------------------
1 | export * from './conditional-form.component';
2 | export * from './conditional-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/cypher/cypher-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/cypher/index.ts:
--------------------------------------------------------------------------------
1 | export * from './cypher-form.component';
2 | export * from './cypher-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/external/external-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/external/index.ts:
--------------------------------------------------------------------------------
1 | export * from './external-form.component';
2 | export * from './external-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/generate/generate-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/generate/index.ts:
--------------------------------------------------------------------------------
1 | export * from './generate-form.component';
2 | export * from './generate-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/guardrails/guardrails-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/guardrails/index.ts:
--------------------------------------------------------------------------------
1 | export * from './guardrails-form.component';
2 | export * from './guardrails-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/historical/historical-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/historical/index.ts:
--------------------------------------------------------------------------------
1 | export * from './historical-form.component';
2 | export * from './historical-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/internet/index.ts:
--------------------------------------------------------------------------------
1 | export * from './internet-form.component';
2 | export * from './internet-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/internet/internet-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/mcp/index.ts:
--------------------------------------------------------------------------------
1 | export * from './mcp-form.component';
2 | export * from './mcp-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/mcp/mcp-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/remi/index.ts:
--------------------------------------------------------------------------------
1 | export * from './remi-form.component';
2 | export * from './remi-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/remi/remi-form.component.html:
--------------------------------------------------------------------------------
1 |
6 |
7 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/rephrase/index.ts:
--------------------------------------------------------------------------------
1 | export * from './rephrase-form.component';
2 | export * from './rephrase-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/rephrase/rephrase-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/restart/index.ts:
--------------------------------------------------------------------------------
1 | export * from './restart-form.component';
2 | export * from './restart-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/restart/restart-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/restricted/index.ts:
--------------------------------------------------------------------------------
1 | export * from './restricted-form.component';
2 | export * from './restricted-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/restricted/restricted-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/sql/index.ts:
--------------------------------------------------------------------------------
1 | export * from './sql-form.component';
2 | export * from './sql-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/sql/sql-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/summarize/index.ts:
--------------------------------------------------------------------------------
1 | export * from './summarize-form.component';
2 | export * from './summarize-node.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/nodes/summarize/summarize-node.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/index.ts:
--------------------------------------------------------------------------------
1 | export * from './rules';
2 | export * from './test-agent';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/rules/index.ts:
--------------------------------------------------------------------------------
1 | export * from './rules-panel.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/agent-block/agent-block.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | :host {
4 | pa-accordion ::ng-deep .pa-accordion-item-title > .title-xs {
5 | font-size: font-size(xs) !important;
6 | }
7 | }
8 |
9 | .step-container {
10 | display: flex;
11 | flex-direction: column;
12 | gap: rhythm(1.5);
13 | }
14 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/agent-block/index.ts:
--------------------------------------------------------------------------------
1 | export * from './agent-block.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/agent-context/agent-context.component.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/agent-context/agent-context.component.scss
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/agent-context/index.ts:
--------------------------------------------------------------------------------
1 | export * from './agent-context.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/agent-step/agent-step.component.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/agent-step/agent-step.component.scss
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/agent-step/index.ts:
--------------------------------------------------------------------------------
1 | export * from './agent-step.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/blockquote/blockquote.component.html:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/blockquote/index.ts:
--------------------------------------------------------------------------------
1 | export * from './blockquote.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/chip/chip.component.html:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/chip/chip.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | :host {
4 | pa-chip ::ng-deep .pa-chip {
5 | border-radius: 6px;
6 | height: rhythm(3);
7 | padding: rhythm(0.25) rhythm(1);
8 |
9 | .pa-chip-content-wrapper {
10 | font-weight: $font-weight-semi-bold;
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/chip/index.ts:
--------------------------------------------------------------------------------
1 | export * from './chip.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/elements/index.ts:
--------------------------------------------------------------------------------
1 | export * from './agent-block';
2 | export * from './agent-context';
3 | export * from './agent-step';
4 | export * from './chip';
5 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/agent-dashboard/workflow/sidebar/test-agent/index.ts:
--------------------------------------------------------------------------------
1 | export * from './test-panel.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/drivers/cypher-driver/index.ts:
--------------------------------------------------------------------------------
1 | export * from './cypher-driver-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/drivers/guardrails-driver/index.ts:
--------------------------------------------------------------------------------
1 | export * from './guardrails-driver-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/drivers/index.ts:
--------------------------------------------------------------------------------
1 | export * from './drivers-page.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/drivers/internet-driver/index.ts:
--------------------------------------------------------------------------------
1 | export * from './internet-driver-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/drivers/mcp-driver/index.ts:
--------------------------------------------------------------------------------
1 | export * from './mcpsse-driver-modal.component';
2 | export * from './mcpstdio-driver-modal.component';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/drivers/nuclia-driver/index.ts:
--------------------------------------------------------------------------------
1 | export * from './nuclia-driver-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/drivers/sql-driver/index.ts:
--------------------------------------------------------------------------------
1 | export * from './sql-driver-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/index.ts:
--------------------------------------------------------------------------------
1 | export * from './agent-dashboard';
2 | export * from './arag.utils';
3 | export * from './drivers';
4 | export * from './retrieval-agent.component';
5 | export * from './sessions';
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/sessions/index.ts:
--------------------------------------------------------------------------------
1 | export * from './session-info';
2 | export * from './sessions-list.component';
3 | export * from './sessions.component';
4 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/sessions/session-info/index.ts:
--------------------------------------------------------------------------------
1 | export * from './session-info.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/sessions/session-info/session-info.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .session-info {
4 | color: $color-neutral-regular;
5 | }
6 |
7 | nsi-info-card {
8 | margin-top: calc(-1 * #{rhythm(2)}); // align the info card with the side nav text
9 | }
10 |
--------------------------------------------------------------------------------
/libs/common/src/lib/retrieval-agent/sessions/sessions.component.ts:
--------------------------------------------------------------------------------
1 | import { CommonModule } from '@angular/common';
2 | import { Component } from '@angular/core';
3 | import { RouterOutlet } from '@angular/router';
4 |
5 | @Component({
6 | imports: [CommonModule, RouterOutlet],
7 | template: '',
8 | })
9 | export class SessionsComponent {}
10 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/index.ts:
--------------------------------------------------------------------------------
1 | export * from './search-configuration';
2 | export * from './search-page.component';
3 | export * from './search-widget.models';
4 | export * from './search-widget.service';
5 | export * from './search-widget-storage.service';
6 | export * from './widgets';
7 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/filter-assistant/filter-expression/index.ts:
--------------------------------------------------------------------------------
1 | export * from './filter-expression.component';
2 | export * from './filter-expression.pipe';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/filter-assistant/filter-type-and-value/index.ts:
--------------------------------------------------------------------------------
1 | export * from './filter-type.pipe';
2 | export * from './filter-type-and-value.component';
3 | export * from './filter-value.component';
4 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/filter-assistant/index.ts:
--------------------------------------------------------------------------------
1 | export * from './filter-assistant-modal.component';
2 | export * from './filter-expression';
3 | export * from './filter-type-and-value';
4 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/find-resource-modal/find-resource-modal.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .form-container {
4 | padding: rhythm(1) 0 rhythm(3) 0;
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/find-resource-modal/index.ts:
--------------------------------------------------------------------------------
1 | export * from './find-resource-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/generative-answer-form/generative-answer-form.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .subsection-title {
4 | @include title-m();
5 | padding-top: rhythm(2);
6 | }
7 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/generative-answer-form/index.ts:
--------------------------------------------------------------------------------
1 | export * from './generative-answer-form.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/index.ts:
--------------------------------------------------------------------------------
1 | export * from './filter-assistant';
2 | export * from './generative-answer-form';
3 | export * from './results-display-form';
4 | export * from './save-config-modal';
5 | export * from './search-box-form';
6 | export * from './search-configuration.component';
7 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/results-display-form/index.ts:
--------------------------------------------------------------------------------
1 | export * from './results-display-form.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/save-config-modal/index.ts:
--------------------------------------------------------------------------------
1 | export * from './save-config-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/save-config-modal/save-config-modal.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .form-container {
4 | padding: rhythm(1) 0;
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/search-box-form/index.ts:
--------------------------------------------------------------------------------
1 | export * from './search-box-form.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/search-configuration/search-request-modal/index.ts:
--------------------------------------------------------------------------------
1 | export * from './search-request-modal.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/widgets/dialogs/create-widget-dialog/create-widget-dialog.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .form-container {
4 | padding: rhythm(1) 0;
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/widgets/dialogs/duplicate-widget-dialog/duplicate-widget-dialog.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .form-container {
4 | padding: rhythm(1) 0;
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/widgets/dialogs/embed-widget-dialog/embed-widget-dialog.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | pre {
4 | background-color: $color-neutral-lightest;
5 | border: 1px solid $color-neutral-lighter;
6 | border-radius: rhythm(0.5);
7 | padding: rhythm(1);
8 | }
9 |
10 | nsi-info-card {
11 | margin-top: rhythm(2);
12 | }
13 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/widgets/dialogs/index.ts:
--------------------------------------------------------------------------------
1 | export * from './create-widget-dialog/create-widget-dialog.component';
2 | export * from './duplicate-widget-dialog/duplicate-widget-dialog.component';
3 | export * from './embed-widget-dialog/embed-widget-dialog.component';
4 | export * from './rename-widget-dialog/rename-widget-dialog.component';
5 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/widgets/dialogs/rename-widget-dialog/rename-widget-dialog.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .form-container {
4 | padding: rhythm(1) 0;
5 | }
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/widgets/index.ts:
--------------------------------------------------------------------------------
1 | export * from './dialogs';
2 | export * from './widget-form';
3 | export * from './widget-list.component';
4 | export * from './widgets.component';
5 | export * from './widgets.routes';
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/search-widget/widgets/widget-form/index.ts:
--------------------------------------------------------------------------------
1 | export * from './widget-form.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/select-account-kb/_select-account.tokens.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | $height-page-container: 90vh;
4 | $vertical-padding: rhythm(8);
5 |
--------------------------------------------------------------------------------
/libs/common/src/lib/select-account-kb/index.ts:
--------------------------------------------------------------------------------
1 | export * from './select-account/select-account.component';
2 | export * from './select-kb/select-kb.component';
3 | export * from './select-account-kb.module';
4 | export * from './select-account-kb.service';
5 | export * from './utils';
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/services/index.ts:
--------------------------------------------------------------------------------
1 | export * from './app.service';
2 | export * from './standalone.service';
3 |
--------------------------------------------------------------------------------
/libs/common/src/lib/tasks-automation/index.ts:
--------------------------------------------------------------------------------
1 | export * from './tasks-automation.component';
2 | export * from './tasks-automation.models';
3 | export * from './tasks-automation.routes';
4 | export * from './tasks-automation.service';
5 | export * from './task-forms';
6 | export * from './task-list';
7 |
--------------------------------------------------------------------------------
/libs/common/src/lib/tasks-automation/task-details/task-execution/task-execution.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 |
4 | .executions {
5 | margin-top: rhythm(3);
6 | }
7 |
8 | .title-s {
9 | color: $color-neutral-regular;
10 | margin: rhythm(1);
11 | }
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/libs/common/src/lib/tasks-automation/task-details/task-testing/test-results/test-results.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .generated-fields {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(1);
7 | }
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/tasks-automation/task-forms/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ask/ask.component';
2 | export * from './graph-extraction/graph-extraction.component';
3 | export * from './labeler/labeler.component';
4 | export * from './question-answer/question-answer.component';
5 | export * from './task-form.component';
6 |
--------------------------------------------------------------------------------
/libs/common/src/lib/tasks-automation/task-list/index.ts:
--------------------------------------------------------------------------------
1 | export * from './task-list.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/tasks-automation/task-list/task-card.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .task-card {
4 | height: rhythm(12);
5 | }
6 |
7 | .card-title {
8 | align-items: center;
9 | display: flex;
10 | gap: rhythm(0.5);
11 | }
12 |
13 | .description {
14 | color: $color-neutral-regular;
15 | }
--------------------------------------------------------------------------------
/libs/common/src/lib/token-dialog/expiration-modal.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | pa-date-picker {
4 | display: block;
5 | padding-top: rhythm(1);
6 | margin-bottom: rhythm(2);
7 | }
--------------------------------------------------------------------------------
/libs/common/src/lib/token-dialog/index.ts:
--------------------------------------------------------------------------------
1 | export * from './expiration-modal.component';
2 | export * from './token-dialog.component';
3 | export * from './token-dialog.module';
4 |
--------------------------------------------------------------------------------
/libs/common/src/lib/topbar/index.ts:
--------------------------------------------------------------------------------
1 | export * from './kb-switch/kb-switch.component';
2 | export * from './topbar.component';
3 | export * from './topbar.module';
4 |
--------------------------------------------------------------------------------
/libs/common/src/lib/topbar/kb-switch/kb-switch.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | :host {
4 | display: block;
5 | min-width: rhythm(24);
6 |
7 | pa-option.demo-kb {
8 | color: $color-neutral-regular;
9 | }
10 |
11 | .title-wrapper {
12 | align-items: center;
13 | display: flex;
14 | gap: rhythm(1);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/libs/common/src/lib/topbar/standalone-menu/standalone-menu.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/nucliadb-admin/src/variables';
2 |
3 | .introspection-link {
4 | color: inherit;
5 | text-decoration: none;
6 | }
7 |
--------------------------------------------------------------------------------
/libs/common/src/lib/topbar/user-menu/index.ts:
--------------------------------------------------------------------------------
1 | export * from './user-menu.component';
2 |
--------------------------------------------------------------------------------
/libs/common/src/lib/upload/csv-select/csv-select.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .upload-csv {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(2);
7 |
8 | .csv-format {
9 | margin-bottom: 0;
10 | padding-left: rhythm(5);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/libs/common/src/lib/upload/extraction-select/extraction-select.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .extraction-select {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(2);
7 | }
--------------------------------------------------------------------------------
/libs/common/src/lib/upload/upload-data/desktop-sources/desktop-sources.component.html:
--------------------------------------------------------------------------------
1 |
4 |
7 |
![]()
10 |
{{ source.text }}
11 |
12 |
13 |
--------------------------------------------------------------------------------
/libs/common/src/lib/upload/upload-data/upload-option/upload-option.component.html:
--------------------------------------------------------------------------------
1 |
9 |
--------------------------------------------------------------------------------
/libs/common/src/lib/upload/upload-qna/upload-qna.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .upload-qna-content {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(3);
7 | }
8 |
--------------------------------------------------------------------------------
/libs/common/src/lib/upload/upload-sitemap/sitemap-select/sitemap-select.component.html:
--------------------------------------------------------------------------------
1 |
4 | {{ 'upload.select-sitemap' | translate }}
5 |
6 |
12 |
--------------------------------------------------------------------------------
/libs/common/src/lib/validators/index.ts:
--------------------------------------------------------------------------------
1 | export * from './form.validator';
2 |
--------------------------------------------------------------------------------
/libs/common/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
2 |
3 | setupZoneTestEnv();
4 |
--------------------------------------------------------------------------------
/libs/common/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.base.json",
3 | "files": [],
4 | "include": [],
5 | "references": [
6 | {
7 | "path": "./tsconfig.lib.json"
8 | },
9 | {
10 | "path": "./tsconfig.spec.json"
11 | }
12 | ],
13 | "compilerOptions": {
14 | "target": "es2020"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/libs/common/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": ["jest", "node"],
6 | "target": "es2016"
7 | },
8 | "files": ["src/test.ts"],
9 | "include": ["**/*.spec.ts", "**/*.d.ts"]
10 | }
11 |
--------------------------------------------------------------------------------
/libs/core/README.md:
--------------------------------------------------------------------------------
1 | # core
2 |
3 | This is the `core` library, containing services managing the communication with all the backend services (nuclia, posthog,…).
4 |
5 | Any library or application can depend on `core`, but core should not depend on any other library.
6 |
--------------------------------------------------------------------------------
/libs/core/src/lib/analytics/index.ts:
--------------------------------------------------------------------------------
1 | export * from './feature-flag.service';
2 | export * from './features.service';
3 |
--------------------------------------------------------------------------------
/libs/core/src/lib/api/index.ts:
--------------------------------------------------------------------------------
1 | export * from './account.service';
2 | export * from './billing.service';
3 | export * from './sdk.service';
4 | export * from './sso.service';
5 | export * from './user.service';
6 | export * from './zone.service';
7 |
--------------------------------------------------------------------------------
/libs/core/src/lib/auth/index.ts:
--------------------------------------------------------------------------------
1 | export * from './auth.guard';
2 | export * from './auth.service';
3 | export * from './jwt';
4 | export * from './login.service';
5 | export * from './oauth.service';
6 | export * from './saml.service';
7 | export * from './token.service';
8 |
--------------------------------------------------------------------------------
/libs/core/src/lib/auth/jwt/index.ts:
--------------------------------------------------------------------------------
1 | export * from './jwthelper.service';
2 | export * from './jwtoptions.token';
3 |
--------------------------------------------------------------------------------
/libs/core/src/lib/auth/jwt/jwtoptions.token.ts:
--------------------------------------------------------------------------------
1 | import { InjectionToken } from '@angular/core';
2 |
3 | export const JWT_OPTIONS = new InjectionToken('JWT_OPTIONS');
4 |
--------------------------------------------------------------------------------
/libs/core/src/lib/config/index.ts:
--------------------------------------------------------------------------------
1 | export * from './app.init.service';
2 | export * from './backend-config.service';
3 | export * from './stf-config.module';
4 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/index.ts:
--------------------------------------------------------------------------------
1 | export * from './label-dropdown/label-dropdown.component';
2 | export * from './label-field/label-field.component';
3 | export * from './label-list/label-list.component';
4 | export * from './label-sets';
5 | export * from './label.module';
6 | export * from './labels.service';
7 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-dropdown/label-dropdown.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .label-selector {
4 | .level2-option ::ng-deep .pa-option {
5 | height: rhythm(5);
6 | }
7 | .filter {
8 | background-color: $color-light-stronger;
9 | position: sticky;
10 | top: 0;
11 | z-index: 1;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-list/label-list.component.html:
--------------------------------------------------------------------------------
1 | 0">
4 |
8 | {{ label.label }}
9 |
10 |
11 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-list/label-list.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .label-list {
4 | display: flex;
5 | flex-wrap: wrap;
6 |
7 | pa-chip-closeable {
8 | margin-bottom: rhythm(0.5);
9 | margin-right: rhythm(0.5);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/index.ts:
--------------------------------------------------------------------------------
1 | export * from './label-list.pipe';
2 | export * from './label-set';
3 | export * from './label-set-list/label-set-list.component';
4 | export * from './label-sets.component';
5 | export * from './label-sets.module';
6 | export * from './model';
7 | export * from './utils';
8 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/label-list.pipe.ts:
--------------------------------------------------------------------------------
1 | import { Pipe, PipeTransform } from '@angular/core';
2 | import { Label } from '@nuclia/core';
3 |
4 | @Pipe({
5 | name: 'labelList',
6 | standalone: false,
7 | })
8 | export class LabelListPipe implements PipeTransform {
9 | transform(value: Label[], ...args: unknown[]): string {
10 | return value.map((label) => label.title).join(', ');
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/label-set-list/label-set-list.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .label-set-title {
4 | padding: 0 rhythm(1);
5 | }
6 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/label-set/index.ts:
--------------------------------------------------------------------------------
1 | export * from './color-picker/color-picker.component';
2 | export * from './label/label.component';
3 | export * from './label-set-form';
4 | export * from './label-set.component';
5 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/label-set/label-set-form/index.ts:
--------------------------------------------------------------------------------
1 | export * from './label-set-form.component';
2 | export * from './label-set-form-modal.component';
3 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/label-set/label-set-form/label-set-form-modal.component.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/core/src/lib/label/label-sets/label-set/label-set-form/label-set-form-modal.component.scss
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/label-set/label-set.component.html:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/label-set/label-set.component.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/core/src/lib/label/label-sets/label-set/label-set.component.scss
--------------------------------------------------------------------------------
/libs/core/src/lib/label/label-sets/missing-labels/index.ts:
--------------------------------------------------------------------------------
1 | export * from './missing-labels-dialog.component';
2 |
--------------------------------------------------------------------------------
/libs/core/src/lib/models/index.ts:
--------------------------------------------------------------------------------
1 | export * from './account.model';
2 | export * from './billing.model';
3 | export * from './kb.models';
4 | export * from './local.model';
5 | export * from './magic.model';
6 | export * from './permissions.model';
7 | export * from './region.model';
8 | export * from './user.model';
9 | export * from './welcome.model';
10 | export * from './zone.model';
11 |
--------------------------------------------------------------------------------
/libs/core/src/lib/models/kb.models.ts:
--------------------------------------------------------------------------------
1 | import { ExternalIndexProvider } from '@nuclia/core';
2 |
3 | export type KbConfiguration = {
4 | kbName: string;
5 | zoneSlug: string;
6 | semanticModels: string[];
7 | };
8 |
9 | export type AccountAndKbConfiguration = {
10 | company: string;
11 | externalIndexProvider?: ExternalIndexProvider | null;
12 | } & KbConfiguration;
13 |
--------------------------------------------------------------------------------
/libs/core/src/lib/models/region.model.ts:
--------------------------------------------------------------------------------
1 | export class RegionSummary {
2 | '@id': string;
3 | '@name': string;
4 |
5 | get url() {
6 | return this['@id'];
7 | }
8 |
9 | get id() {
10 | return this['@name'];
11 | }
12 |
13 | constructor(summary: any) {
14 | Object.assign(this, summary);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/libs/core/src/lib/models/zone.model.ts:
--------------------------------------------------------------------------------
1 | export interface Zone {
2 | id: string;
3 | slug: string;
4 | title?: string;
5 | cloud_provider: 'AWS' | 'GCP';
6 | subdomain: string;
7 | }
8 |
--------------------------------------------------------------------------------
/libs/core/src/lib/notifications/index.ts:
--------------------------------------------------------------------------------
1 | export * from './notification-button/notification-button.component';
2 | export * from './notifications-panel/notifications-panel.component';
3 | export * from './notification/notification.component';
4 | export * from './notification.model';
5 | export * from './notification.service';
6 |
--------------------------------------------------------------------------------
/libs/core/src/lib/notifications/notification-button/notification-button.component.html:
--------------------------------------------------------------------------------
1 |
14 |
--------------------------------------------------------------------------------
/libs/core/src/lib/parameters-table/index.ts:
--------------------------------------------------------------------------------
1 | export * from './parameters-table.component';
2 |
--------------------------------------------------------------------------------
/libs/core/src/lib/parameters-table/parameters-table.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .table-header-button {
4 | padding: rhythm(1);
5 | }
6 |
7 | pa-input {
8 | padding: rhythm(1) 0;
9 | width: 100%;
10 | }
11 |
--------------------------------------------------------------------------------
/libs/core/src/lib/services/index.ts:
--------------------------------------------------------------------------------
1 | export * from './navigation.service';
2 |
--------------------------------------------------------------------------------
/libs/core/src/lib/testing/index.ts:
--------------------------------------------------------------------------------
1 | export * from './utils';
2 |
--------------------------------------------------------------------------------
/libs/core/src/lib/ui/file-upload/index.ts:
--------------------------------------------------------------------------------
1 | export * from './file-select.directive';
2 | export * from './file-drop.directive';
3 | export * from './file-select.directive';
4 |
5 | export { FileUploadModule } from './file-upload.module';
6 |
--------------------------------------------------------------------------------
/libs/core/src/lib/ui/index.ts:
--------------------------------------------------------------------------------
1 | export * from './file-upload';
2 | export * from './lower-case-input.directive';
3 | export * from './pipes';
4 | export * from './sidebar.service';
5 | export * from './splash-screen.service';
6 |
--------------------------------------------------------------------------------
/libs/core/src/lib/ui/pipes/index.ts:
--------------------------------------------------------------------------------
1 | export * from './size.pipe';
2 | export * from './stf-pipes.module';
3 |
--------------------------------------------------------------------------------
/libs/core/src/lib/ui/pipes/stf-pipes.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { SizePipe } from './size.pipe';
4 |
5 | const PIPES = [SizePipe];
6 |
7 | @NgModule({
8 | declarations: [...PIPES],
9 | imports: [CommonModule],
10 | exports: [...PIPES],
11 | })
12 | export class STFPipesModule {}
13 |
--------------------------------------------------------------------------------
/libs/core/src/lib/unauthorized-feature/index.ts:
--------------------------------------------------------------------------------
1 | export * from './unauthorized-feature.component';
2 | export * from './unauthorized-feature.directive';
3 | export * from './unauthorized-feature.model';
4 | export * from './unauthorized-feature-modal.component';
5 |
--------------------------------------------------------------------------------
/libs/core/src/lib/unauthorized-feature/unauthorized-feature.model.ts:
--------------------------------------------------------------------------------
1 | import { IconModel } from '@guillotinaweb/pastanaga-angular';
2 |
3 | export const UNAUTHORIZED_ICON: IconModel = {
4 | name: 'lock-filled',
5 | size: 'small',
6 | color: '#1F00CC',
7 | };
8 |
--------------------------------------------------------------------------------
/libs/core/src/lib/utils/index.ts:
--------------------------------------------------------------------------------
1 | export * from './clonedeep';
2 | export * from './deep-equal';
3 | export * from './md5';
4 | export * from './utils';
5 |
--------------------------------------------------------------------------------
/libs/core/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
2 |
3 | setupZoneTestEnv();
4 |
--------------------------------------------------------------------------------
/libs/core/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.base.json",
3 | "files": [],
4 | "include": [],
5 | "references": [
6 | {
7 | "path": "./tsconfig.lib.json"
8 | },
9 | {
10 | "path": "./tsconfig.spec.json"
11 | }
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/libs/core/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": ["jest", "node", "jsdom"],
6 | "target": "es2016"
7 | },
8 | "files": ["src/test.ts"],
9 | "include": ["**/*.spec.ts", "**/*.d.ts"]
10 | }
11 |
--------------------------------------------------------------------------------
/libs/sdk-core/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | [
4 | "@nx/js/babel",
5 | {
6 | "useBuiltIns": "usage"
7 | }
8 | ]
9 | ]
10 | }
11 |
--------------------------------------------------------------------------------
/libs/sdk-core/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": ["../../.eslintrc.json"],
3 | "ignorePatterns": ["!**/*"],
4 | "overrides": [
5 | {
6 | "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
7 | "rules": {}
8 | },
9 | {
10 | "files": ["*.ts", "*.tsx"],
11 | "rules": {}
12 | },
13 | {
14 | "files": ["*.js", "*.jsx"],
15 | "rules": {}
16 | }
17 | ]
18 | }
19 |
--------------------------------------------------------------------------------
/libs/sdk-core/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | displayName: 'sdk-core',
3 | preset: '../../jest.preset.js',
4 | globals: {},
5 | transform: {
6 | '^.+\\.[tj]sx?$': [
7 | 'ts-jest',
8 | {
9 | tsconfig: '/tsconfig.spec.json',
10 | },
11 | ],
12 | },
13 | moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'],
14 | coverageDirectory: '../../coverage/libs/sdk-core',
15 | };
16 |
--------------------------------------------------------------------------------
/libs/sdk-core/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@nuclia/core",
3 | "version": "1.26.0",
4 | "description": "SDK allowing to integrate Nuclia services in your frontend application",
5 | "license": "MIT",
6 | "keywords": [
7 | "Nuclia",
8 | "NucliaDB"
9 | ],
10 | "main": "umd/index.js",
11 | "module": "esm/index.js",
12 | "types": "types/index.d.ts",
13 | "peerDependencies": {
14 | "rxjs": "^7.8.0"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './lib/auth';
2 | export * from './lib/core';
3 | export * from './lib/db';
4 | export * from './lib/models';
5 | export * from './lib/rest';
6 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/auth/auth.models.ts:
--------------------------------------------------------------------------------
1 | export interface AuthTokens {
2 | access_token: string;
3 | refresh_token: string;
4 | }
5 |
6 | export type NucliaDBRole = 'READER' | 'WRITER' | 'MANAGER';
7 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/auth/index.ts:
--------------------------------------------------------------------------------
1 | export * from './auth';
2 | export * from './auth.models';
3 | export * from './jwt-helpers';
4 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/index.ts:
--------------------------------------------------------------------------------
1 | export * from './db';
2 | export * from './db.models';
3 | export * from './kb';
4 | export * from './notifications';
5 | export * from './resource';
6 | export * from './retrieval-agent';
7 | export * from './search';
8 | export * from './task';
9 | export * from './training';
10 | export * from './upload';
11 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/kb/activity/index.ts:
--------------------------------------------------------------------------------
1 | export * from './activity-monitor';
2 | export * from './activity.models';
3 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/kb/index.ts:
--------------------------------------------------------------------------------
1 | export * from './kb';
2 | export * from './kb.models';
3 | export * from './activity';
4 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/notifications/index.ts:
--------------------------------------------------------------------------------
1 | export * from './notifications';
2 | export * from './notification.models';
3 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/resource/index.ts:
--------------------------------------------------------------------------------
1 | export * from './resource';
2 | export * from './resource.helpers';
3 | export * from './resource.mapper';
4 | export * from './resource.models';
5 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/retrieval-agent/index.ts:
--------------------------------------------------------------------------------
1 | export * from './driver.models';
2 | export * from './interactions.models';
3 | export * from './retrieval-agent';
4 | export * from './retrieval-agent.models';
5 | export * from './retrieval-agent.types';
6 | export * from './session';
7 | export * from './session.models';
8 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/retrieval-agent/session.models.ts:
--------------------------------------------------------------------------------
1 | import { IResource } from '../resource';
2 |
3 | export type ISession = IResource;
4 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/search/index.ts:
--------------------------------------------------------------------------------
1 | export * from './filter';
2 | export * from './search.models';
3 | export * from './search';
4 | export * from './ask';
5 | export * from './agentic';
6 | export * from './ask.models';
7 | export * from './widget';
8 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/task/index.ts:
--------------------------------------------------------------------------------
1 | export * from './task';
2 | export * from './task.models';
3 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/db/training/index.ts:
--------------------------------------------------------------------------------
1 | export * from './training';
2 | export * from './training.models';
3 |
--------------------------------------------------------------------------------
/libs/sdk-core/src/lib/rest/index.ts:
--------------------------------------------------------------------------------
1 | export * from './rest';
2 |
--------------------------------------------------------------------------------
/libs/sdk-core/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.base.json",
3 | "files": [],
4 | "include": [],
5 | "references": [
6 | {
7 | "path": "./tsconfig.lib.json"
8 | },
9 | {
10 | "path": "./tsconfig.spec.json"
11 | }
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/libs/search-widget/public/tiles/audio-waves.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/search-widget/public/tiles/audio-waves.mp4
--------------------------------------------------------------------------------
/libs/search-widget/src/common/button/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Button } from './Button.svelte';
2 | export { default as IconButton } from './IconButton.svelte';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/dropdown/Dropdown.scss:
--------------------------------------------------------------------------------
1 | .sw-dropdown {
2 | background-color: var(--dropdown-background-color);
3 | box-shadow: var(--shadow-modal);
4 | position: fixed;
5 | width: var(--rhythm-27);
6 | z-index: 10000;
7 | }
8 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/icons/Icon.scss:
--------------------------------------------------------------------------------
1 | .sw-svg-icon {
2 | fill: currentColor;
3 | height: var(--rhythm-3);
4 | width: var(--rhythm-3);
5 |
6 | &.small {
7 | height: var(--rhythm-2);
8 | width: var(--rhythm-2);
9 | }
10 | &.large {
11 | height: var(--rhythm-5);
12 | width: var(--rhythm-5);
13 | }
14 | &:focus {
15 | outline: 0;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/icons/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Icon } from './Icon.svelte';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/indicators/PageIndicator.scss:
--------------------------------------------------------------------------------
1 | @import 'indicator';
2 |
3 | .sw-page-indicator {
4 | min-width: var(--rhythm-3);
5 |
6 | &:not(.stack) {
7 | flex: 1 0 auto;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/indicators/TimeIndicator.scss:
--------------------------------------------------------------------------------
1 | @import 'indicator';
2 | .sw-time-indicator {
3 | padding: 0 var(--rhythm-1) 0 var(--rhythm-0_5);
4 |
5 | &.minimized {
6 | border-radius: 50%;
7 | padding: var(--rhythm-1);
8 | }
9 | &.minimized .time-label {
10 | display: none;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/indicators/index.ts:
--------------------------------------------------------------------------------
1 | export { default as DocTypeIndicator } from './DocTypeIndicator.svelte';
2 | export { default as PageIndicator } from './PageIndicator.svelte';
3 | export { default as TimeIndicator } from './TimeIndicator.svelte';
4 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/label/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Label } from './Label.svelte';
2 | export * from './label.utils';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/modal/index.ts:
--------------------------------------------------------------------------------
1 | export { default as ConfirmDialog } from './ConfirmDialog.svelte';
2 | export { default as Modal } from './Modal.svelte';
3 | export * from './modal.utils';
4 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/paragraph-result/index.ts:
--------------------------------------------------------------------------------
1 | export { default as AllResultsToggle } from './AllResultsToggle.svelte';
2 | export { default as ParagraphResult } from './ParagraphResult.svelte';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/spinner/index.ts:
--------------------------------------------------------------------------------
1 | export { default as LoadingDots } from './LoadingDots.svelte';
2 | export { default as Spinner } from './Spinner.svelte';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/tabs/TabsList.scss:
--------------------------------------------------------------------------------
1 | .sw-tabs-list {
2 | display: flex;
3 | list-style: none;
4 | margin: 0;
5 | padding: 0;
6 | white-space: nowrap;
7 | }
8 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/tabs/TabsList.svelte:
--------------------------------------------------------------------------------
1 |
10 |
11 |
14 | {@render children?.()}
15 |
16 |
17 |
20 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/tabs/index.ts:
--------------------------------------------------------------------------------
1 | export { default as TabItem } from './TabItem.svelte';
2 | export { default as TabsList } from './TabsList.svelte';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/thumbnail/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Thumbnail } from './Thumbnail.svelte';
2 | export { default as ThumbnailPlayer } from './ThumbnailPlayer.svelte';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/tooltip/Tooltip.scss:
--------------------------------------------------------------------------------
1 | .sw-tooltip {
2 | background: hsl(0, 0%, 5%);
3 | border-radius: 2px;
4 | color: #fff;
5 | font-family: 'Source Sans Pro', sans-serif;
6 | font-size: 13px;
7 | opacity: 0;
8 | padding: 4px 8px;
9 | position: absolute;
10 | transition: opacity 240ms ease-in-out;
11 | }
12 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/tooltip/Tooltip.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 |
10 | {title}
11 |
12 |
13 |
16 |
--------------------------------------------------------------------------------
/libs/search-widget/src/common/tooltip/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Tooltip } from './Tooltip.svelte';
2 | export * from './tooltip';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/answer/InitialAnswer.scss:
--------------------------------------------------------------------------------
1 | .sw-initial-answer {
2 | .title-s {
3 | margin: 0 0 var(--rhythm-1) 0;
4 | }
5 | }
6 |
7 | @media (min-width: 599px) {
8 | .sw-initial-answer {
9 | min-height: var(--rhythm-8);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/answer/JsonAnswer.scss:
--------------------------------------------------------------------------------
1 | .sw-json-answer {
2 | margin-bottom: var(--rhythm-1);
3 |
4 | .title-s {
5 | margin: 0 0 var(--rhythm-1) 0;
6 | }
7 |
8 | ul {
9 | margin: 0;
10 | padding: 0 var(--rhythm-2);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/answer/json-answer.model.ts:
--------------------------------------------------------------------------------
1 | import type { JsonSchema } from '../../core';
2 |
3 | export interface JsonAnswerItem {
4 | label: string;
5 | value: any;
6 | parameters?: JsonSchema;
7 | items?: JsonAnswerItem[][];
8 | }
9 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/knowledge-graph/index.ts:
--------------------------------------------------------------------------------
1 | export { default as D3Loader } from './D3Loader.svelte';
2 | export { default as Graph } from './Graph.svelte';
3 | export { default as KnowledgeGraph } from './KnowledgeGraph.svelte';
4 | export { default as KnowledgeGraphPanel } from './KnowledgeGraphPanel.svelte';
5 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/result-row/index.ts:
--------------------------------------------------------------------------------
1 | export { default as FieldMetadata } from './FieldMetadata.svelte';
2 | export { default as ResultRow } from './ResultRow.svelte';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/results-order/ResultsOrderButton.scss:
--------------------------------------------------------------------------------
1 | .sw-results-order {
2 | .icon {
3 | display: inline-flex;
4 | margin-left: var(--rhythm-1);
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/search-input/index.ts:
--------------------------------------------------------------------------------
1 | export { default as SearchInput } from './SearchInput.svelte';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/viewer/renderers/ImageRenderer.scss:
--------------------------------------------------------------------------------
1 | .sw-image-renderer {
2 | align-items: flex-start;
3 | display: flex;
4 | height: 100%;
5 | justify-content: center;
6 | width: 100%;
7 | img {
8 | max-height: calc(100vh - var(--renderer-outer-space));
9 | max-width: 100%;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/viewer/renderers/VideoRenderer.scss:
--------------------------------------------------------------------------------
1 | .sw-video-renderer {
2 | position: relative;
3 |
4 | .thumbnail,
5 | .video-player {
6 | position: absolute;
7 | left: 0;
8 | right: 0;
9 | top: 0;
10 | opacity: 0;
11 | transition: opacity var(--transition-slow);
12 |
13 | &.visible {
14 | opacity: 1;
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/viewer/renderers/players/VideoPlayer.scss:
--------------------------------------------------------------------------------
1 | .sw-video-player {
2 | text-align: center;
3 | video {
4 | max-height: calc(100vh - var(--renderer-outer-space) - var(--player-bar-height));
5 | max-width: 100%;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/viewer/renderers/players/YoutubePlayer.scss:
--------------------------------------------------------------------------------
1 | .sw-youtube {
2 | .player {
3 | aspect-ratio: 16 / 9;
4 | display: block;
5 | width: 100%;
6 | }
7 | }
8 |
9 | @media (min-width: 648px) {
10 | .sw-youtube {
11 | height: 100%;
12 |
13 | .player {
14 | max-height: calc(100vh - var(--renderer-outer-space));
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/viewer/renderers/players/index.ts:
--------------------------------------------------------------------------------
1 | export { default as AudioPlayer } from './AudioPlayer.svelte';
2 | export { default as PlayerControls } from './PlayerControls.svelte';
3 | export { default as VideoPlayer } from './VideoPlayer.svelte';
4 | export { default as YoutubePlayer } from './YoutubePlayer.svelte';
5 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/viewer/renderers/renderings/PlainTextRendering.svelte:
--------------------------------------------------------------------------------
1 |
10 |
11 | {@html formattedText}
12 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/viewer/renderers/renderings/RstRendering.svelte:
--------------------------------------------------------------------------------
1 |
11 |
12 | {@html formattedText}
13 |
--------------------------------------------------------------------------------
/libs/search-widget/src/components/viewer/utils.ts:
--------------------------------------------------------------------------------
1 | import { viewerState } from '../../core';
2 |
3 | export const markRegex = new RegExp(/<\/*mark>/, 'g');
4 |
5 | export function getUnMarked(paragraph: string): string {
6 | return paragraph.replace(markRegex, '').trim();
7 | }
8 |
9 | export function onClosePreview() {
10 | viewerState.reset();
11 | }
12 |
--------------------------------------------------------------------------------
/libs/search-widget/src/core/index.ts:
--------------------------------------------------------------------------------
1 | export * from './state-lib';
2 | export * from './stores';
3 | export * from './api';
4 | export * from './i18n';
5 | export * from './knowledge-graph.models';
6 | export * from './models';
7 | export * from './search-bar';
8 | export * from './tracking';
9 | export * from './utils';
10 |
--------------------------------------------------------------------------------
/libs/search-widget/src/core/reset.ts:
--------------------------------------------------------------------------------
1 | // Note: this subject is in a separate file to avoid circular dependencies between api.ts and effects.ts
2 | import { Subject } from 'rxjs';
3 |
4 | export const reset = new Subject();
5 |
--------------------------------------------------------------------------------
/libs/search-widget/src/core/state-lib/index.ts:
--------------------------------------------------------------------------------
1 | export * from './state.lib';
2 | export * from './writable-subject';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/core/stores/index.ts:
--------------------------------------------------------------------------------
1 | export * from './answers.store';
2 | export * from './effects';
3 | export * from './entities.store';
4 | export * from './graph.store';
5 | export * from './labels.store';
6 | export * from './search.store';
7 | export * from './suggestions.store';
8 | export * from './viewer.store';
9 | export * from './widget.store';
10 |
--------------------------------------------------------------------------------
/libs/search-widget/src/index.js:
--------------------------------------------------------------------------------
1 | export * from './core';
2 | export * from './common';
3 | export * from './components';
4 | export * from './widgets';
5 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/chat-widget/ChatWidget.scss:
--------------------------------------------------------------------------------
1 | @import '../../common/common-style';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/chat-widget/index.ts:
--------------------------------------------------------------------------------
1 | export { default as NucliaChat } from './ChatWidget.svelte';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/global-widget/components/answer/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Answer } from './Answer.svelte';
2 | export { default as Feedback } from './Feedback.svelte';
3 | export { default as InitialAnswer } from './InitialAnswer.svelte';
4 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/global-widget/components/index.ts:
--------------------------------------------------------------------------------
1 | export * from './answer';
2 | export * from './result-row';
3 | export { default as SearchInput } from './search-input/SearchInput.svelte';
4 | export { default as Suggestions } from './suggestions/Suggestions.svelte';
5 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/global-widget/components/result-row/index.ts:
--------------------------------------------------------------------------------
1 | export { default as ResultRow } from './ResultRow.svelte';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/global-widget/index.ts:
--------------------------------------------------------------------------------
1 | export { default as NucliaGlobalSearch } from './GlobalWidget.svelte';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/global-widget/lib.ts:
--------------------------------------------------------------------------------
1 | export * from './GlobalWidget.svelte';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/index.ts:
--------------------------------------------------------------------------------
1 | export { default as NucliaChat } from './chat-widget/ChatWidget.svelte';
2 | export { default as NucliaSearchBar } from './search-widget/SearchBar.svelte';
3 | export { default as NucliaSearchResults } from './search-widget/SearchResults.svelte';
4 | export { default as NucliaViewerWidget } from './viewer-widget/ViewerWidget.svelte';
5 | export { default as NucliaGlobalSearch } from './global-widget/GlobalWidget.svelte';
6 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/popup-widget/index.ts:
--------------------------------------------------------------------------------
1 | export { default as NucliaPopupWidget } from './PopupWidget.svelte';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/search-widget/index.ts:
--------------------------------------------------------------------------------
1 | export { default as NucliaSearchResults } from './SearchResults.svelte';
2 | export { default as NucliaSearchBar } from './SearchBar.svelte';
3 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/search-widget/lib.ts:
--------------------------------------------------------------------------------
1 | export * from '../chat-widget/ChatWidget.svelte';
2 | export * from '../popup-widget/PopupWidget.svelte';
3 | export * from '../viewer-widget/ViewerWidget.svelte';
4 | export * from './SearchBar.svelte';
5 | export * from './SearchResults.svelte';
6 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/viewer-widget/ViewerWidget.scss:
--------------------------------------------------------------------------------
1 | @import '../../common/common-style';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/src/widgets/viewer-widget/index.ts:
--------------------------------------------------------------------------------
1 | export { default as NucliaViewerWidget } from './ViewerWidget.svelte';
2 |
--------------------------------------------------------------------------------
/libs/search-widget/svelte.config.js:
--------------------------------------------------------------------------------
1 | import { sveltePreprocess } from 'svelte-preprocess';
2 |
3 | export default {
4 | // Consult https://github.com/sveltejs/svelte-preprocess
5 | // for more information about preprocessors
6 | preprocess: sveltePreprocess(),
7 | compilerOptions: {
8 | css: 'injected',
9 | },
10 | };
11 |
--------------------------------------------------------------------------------
/libs/search-widget/tsconfig.lib.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 |
4 | "compilerOptions": {
5 | "outDir": "../../dist/out-tsc"
6 | },
7 |
8 | "include": ["src/**/*"],
9 | "exclude": ["**/*.spec.ts", "**/*_spec.ts", "public/*"]
10 | }
11 |
--------------------------------------------------------------------------------
/libs/search-widget/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "types": ["vitest/globals"]
6 | },
7 | "include": ["**/*.test.ts", "**/*.spec.ts", "**/*.d.ts"]
8 | }
9 |
--------------------------------------------------------------------------------
/libs/sistema/README.md:
--------------------------------------------------------------------------------
1 | # sistema
2 |
3 | Nuclia's design system is based on [Pastanaga angular](https://github.com/plone/pastanaga-angular)
4 | which provides a lot of angular UI components properly tested and fully responsive.
5 |
6 | Sistema library contains Nuclia's specific theme and assets, as well as any UI component which doesn't belong to Pastanaga (those components are prefixed by `nsi-`).
7 |
--------------------------------------------------------------------------------
/libs/sistema/assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/sistema/assets/.gitkeep
--------------------------------------------------------------------------------
/libs/sistema/assets/fonts/source-code-pro/source-code-pro-v14-latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/sistema/assets/fonts/source-code-pro/source-code-pro-v14-latin-regular.woff
--------------------------------------------------------------------------------
/libs/sistema/assets/fonts/source-code-pro/source-code-pro-v14-latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/sistema/assets/fonts/source-code-pro/source-code-pro-v14-latin-regular.woff2
--------------------------------------------------------------------------------
/libs/sistema/assets/fonts/videoagular/videogular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/sistema/assets/fonts/videoagular/videogular.woff
--------------------------------------------------------------------------------
/libs/sistema/assets/signup/check-email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/libs/sistema/assets/signup/check-email.png
--------------------------------------------------------------------------------
/libs/sistema/assets/sso-icons/microsoft.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/activity-log.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/add-file.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/arrow-down.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/arrow-left.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/arrow-right.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/arrow-up.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/arrows-related.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/audio.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/check.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/chevron-down.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/chevron-left.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/chevron-right.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/chevron-up.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/chevrons-left.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/chevrons-right.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/collapse.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/copy.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/cross.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/download.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/draggable.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/expand.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/file-empty.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/file.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/filter.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/folder.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/home.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/key.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/knowledge-box.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/labeler.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/menu.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/more-horizontal.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/more-vertical.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/pause.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/payment.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/play.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/plus.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/search.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/square-arrow.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/undo.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/upload.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/warning.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/libs/sistema/glyphs/widget.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/back-button/back-button.component.html:
--------------------------------------------------------------------------------
1 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/back-button/back-button.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | :host {
4 | pa-icon {
5 | display: flex;
6 | }
7 |
8 | a {
9 | align-items: center;
10 | color: $color-dark-stronger;
11 | display: flex;
12 | gap: rhythm(1);
13 | padding-right: rhythm(1);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/back-button/index.ts:
--------------------------------------------------------------------------------
1 | export * from './back-button.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/badge/index.ts:
--------------------------------------------------------------------------------
1 | export * from './badge.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/button-mini/button-mini.component.html:
--------------------------------------------------------------------------------
1 |
13 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/button-mini/index.ts:
--------------------------------------------------------------------------------
1 | export * from './button-mini.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/cards/action-card/index.ts:
--------------------------------------------------------------------------------
1 | export * from './action-card.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/cards/index.ts:
--------------------------------------------------------------------------------
1 | export * from './action-card';
2 | export * from './info-card';
3 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/cards/info-card/index.ts:
--------------------------------------------------------------------------------
1 | export * from './info-card.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/cards/info-card/info-card.component.html:
--------------------------------------------------------------------------------
1 | @if (icon) {
2 |
3 | }
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/dropdown-button/index.ts:
--------------------------------------------------------------------------------
1 | export * from './dropdown-button.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/expandable-textarea/index.ts:
--------------------------------------------------------------------------------
1 | export * from './expandable-textarea.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/expandable-textarea/textarea-modal/textarea-modal.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | pa-textarea {
4 | display: block;
5 | height: 100%;
6 | max-width: 100%;
7 | width: rhythm(90);
8 | }
9 |
10 | pa-textarea ::ng-deep {
11 | .pa-field {
12 | height: 100%;
13 | }
14 | .pa-field-container {
15 | height: calc(100% - #{rhythm(4)});
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/folder-list/folder-list.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | ul.folder-list {
4 | margin: 0;
5 | padding: 0;
6 | list-style: none;
7 |
8 | li {
9 | align-items: center;
10 | box-shadow: $box-shadow-border-bottom;
11 | display: flex;
12 | gap: rhythm(1);
13 | height: rhythm(5);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/folder-list/index.ts:
--------------------------------------------------------------------------------
1 | export * from './folder-list.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/folder-tree/folder-tree.component.html:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/folder-tree/index.ts:
--------------------------------------------------------------------------------
1 | export * from './folder-tree.component';
2 | export * from './folder-tree.model';
3 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/home-container/home-container.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | :host {
4 | display: flex;
5 | border: 1px solid $color-neutral-lighter;
6 | border-radius: rhythm(1);
7 | flex-direction: column;
8 | gap: rhythm(2);
9 | padding: rhythm(2);
10 | }
11 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/home-container/index.ts:
--------------------------------------------------------------------------------
1 | export * from './home-container.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/icons/icons.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { MimeIconPipe } from './mime-icon.pipe';
4 |
5 | @NgModule({
6 | imports: [CommonModule],
7 | declarations: [MimeIconPipe],
8 | exports: [MimeIconPipe],
9 | })
10 | export class SisIconsModule {}
11 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/icons/index.ts:
--------------------------------------------------------------------------------
1 | export * from './icons';
2 | export * from './icons.module';
3 | export * from './mime-icon.pipe';
4 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/json-viewer/index.ts:
--------------------------------------------------------------------------------
1 | export * from './json-viewer.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/json-viewer/json-viewer.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | :host {
4 | pa-table ::ng-deep .pa-table-grid {
5 | border-top: 1px solid $color-neutral-lighter;
6 | }
7 | pa-table ::ng-deep .pa-table-grid--cell {
8 | border-left: 1px solid $color-neutral-lighter;
9 | border-right: 1px solid $color-neutral-lighter;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/label/index.ts:
--------------------------------------------------------------------------------
1 | export * from './label.component';
2 | export * from './label.utils';
3 | export * from './sis-label.module';
4 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/label/label.component.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/label/label.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | pa-chip-closeable ::ng-deep .body-s {
4 | font-weight: $font-weight-semi-bold;
5 | }
6 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/label/sis-label.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { LabelComponent } from './label.component';
4 | import { PaChipsModule } from '@guillotinaweb/pastanaga-angular';
5 |
6 | @NgModule({
7 | declarations: [LabelComponent],
8 | imports: [CommonModule, PaChipsModule],
9 | exports: [LabelComponent],
10 | })
11 | export class SisLabelModule {}
12 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/labels-expander/index.ts:
--------------------------------------------------------------------------------
1 | export * from './classification.helpers';
2 | export * from './labels-expander.component';
3 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/labels-expander/labels-expander.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | .label-selector {
4 | padding: rhythm(1) 0 rhythm(2) rhythm(1.5);
5 | }
6 |
7 | .filter {
8 | margin-bottom: rhythm(1);
9 | }
10 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/password-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from './password-input.component';
2 | export * from './password-input.module';
3 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/password-input/password-input.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | .nsi-password-input {
4 | .pa-field-container {
5 | align-items: center;
6 | display: flex;
7 | gap: rhythm(0.5);
8 | padding-right: rhythm(0.5);
9 | }
10 | pa-button ::ng-deep .pa-button:not(:disabled).pa-secondary.pa-basic {
11 | color: $color-text-field-label-regular;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/progress/delayed-spinner/delayed-spinner.component.html:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/progress/index.ts:
--------------------------------------------------------------------------------
1 | export * from './delayed-spinner/delayed-spinner.component';
2 | export * from './progress-bar/progress-bar.component';
3 | export * from './spinner/spinner.component';
4 | export * from './sis-progress.module';
5 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/progress/progress-bar/progress-bar.component.html:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/progress/spinner/spinner.component.html:
--------------------------------------------------------------------------------
1 |
16 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/search-input/index.ts:
--------------------------------------------------------------------------------
1 | export * from './search-input.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/search-input/search-input.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | .nsi-search-input {
4 | .pa-field-container {
5 | align-items: center;
6 | display: flex;
7 | gap: rhythm(0.5);
8 | padding-right: rhythm(0.5);
9 | }
10 | .nsi-search-input-button {
11 | cursor: pointer;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/segmented-buttons/index.ts:
--------------------------------------------------------------------------------
1 | export * from './segmented-buttons.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/status/index.ts:
--------------------------------------------------------------------------------
1 | export * from './status.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/status/status.component.html:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/status/status.component.scss:
--------------------------------------------------------------------------------
1 | @use '../../../styles/variables' as *;
2 |
3 | .processed {
4 | color: $color-primary-regular;
5 | }
6 | .error {
7 | color: $color-secondary-stronger;
8 | }
9 | .pending {
10 | color: $color-neutral-regular;
11 | }
12 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/sticky-footer/index.ts:
--------------------------------------------------------------------------------
1 | export * from './sticky-footer.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/sticky-footer/sticky-footer.component.html:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/libs/sistema/src/lib/two-columns-configuration-item/index.ts:
--------------------------------------------------------------------------------
1 | export * from './two-columns-configuration-item.component';
2 |
--------------------------------------------------------------------------------
/libs/sistema/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
2 |
3 | setupZoneTestEnv();
4 |
--------------------------------------------------------------------------------
/libs/sistema/theme/_fonts.scss:
--------------------------------------------------------------------------------
1 | @forward './fonts/source-code-pro';
2 |
--------------------------------------------------------------------------------
/libs/sistema/theme/fonts/_source-code-pro.scss:
--------------------------------------------------------------------------------
1 | $font-path: '../../assets/fonts';
2 |
3 | /* source-code-pro-regular - latin */
4 | @font-face {
5 | font-family: 'Source Code Pro';
6 | font-style: normal;
7 | font-weight: 400;
8 | src: url($font-path + '/source-code-pro/source-code-pro-v14-latin-regular.woff2') format('woff2'),
9 | url($font-path + '/source-code-pro/source-code-pro-v14-latin-regular.woff') format('woff');
10 | }
11 |
--------------------------------------------------------------------------------
/libs/sistema/theme/tokens/_card.tokens.scss:
--------------------------------------------------------------------------------
1 | @use './spacing.tokens' as spacing;
2 | @forward '../../../pastanaga-angular/projects/pastanaga-angular/src/styles/theme/card.tokens'
3 | with($border-radius-card: spacing.rhythm(1));
4 |
--------------------------------------------------------------------------------
/libs/sistema/theme/tokens/_modal.tokens.scss:
--------------------------------------------------------------------------------
1 | @use './spacing.tokens' as spacing;
2 | @forward '../../../pastanaga-angular/projects/pastanaga-angular/src/styles/theme/modal.tokens' with (
3 | $width-confirm-dialog: spacing.rhythm(56)
4 | );
5 |
--------------------------------------------------------------------------------
/libs/sistema/theme/tokens/_popover.tokens.scss:
--------------------------------------------------------------------------------
1 | @use 'palette.tokens' as palette;
2 | @forward '../../../pastanaga-angular/projects/pastanaga-angular/src/styles/theme/popover.tokens' with (
3 | $color-background-popover: palette.$color-dark-stronger,
4 | $color-text-popover: palette.$color-neutral-lightest
5 | );
6 |
--------------------------------------------------------------------------------
/libs/sistema/theme/tokens/_shadows.tokens.scss:
--------------------------------------------------------------------------------
1 | @use '../tokens/palette.tokens' as palette;
2 | @forward '../../../pastanaga-angular/projects/pastanaga-angular/src/styles/theme/shadows.tokens' with (
3 | $shadow-small: 1px 1px 2px rgba(0, 0, 0, 0.3),
4 | $color-shadow-focus: rgba(255, 117, 172, 0.6)
5 | );
6 |
--------------------------------------------------------------------------------
/libs/sistema/theme/tokens/_z-index.tokens.scss:
--------------------------------------------------------------------------------
1 | @forward '../../../pastanaga-angular/projects/pastanaga-angular/src/styles/theme/z-index.tokens' with (
2 | $z-index-toast: 10000,
3 | $z-index-modal-backdrop: 9999
4 | );
5 |
--------------------------------------------------------------------------------
/libs/sistema/tsconfig.lib.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "declaration": true,
6 | "declarationMap": true,
7 | "inlineSources": true,
8 | "types": []
9 | },
10 | "exclude": ["src/test-setup.ts", "**/*.spec.ts", "**/*.test.ts"],
11 | "include": ["**/*.ts"]
12 | }
13 |
--------------------------------------------------------------------------------
/libs/sistema/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "module": "commonjs",
6 | "types": ["jest", "node"],
7 | "target": "es2016"
8 | },
9 | "files": ["src/test-setup.ts"],
10 | "include": ["**/*.test.ts", "**/*.spec.ts", "**/*.d.ts"]
11 | }
12 |
--------------------------------------------------------------------------------
/libs/sync/README.md:
--------------------------------------------------------------------------------
1 | # sync
2 |
3 | Library containing common components and services to synchronize external data with Nuclia
4 |
5 | ## Running unit tests
6 |
7 | Run `nx test sync` to execute the unit tests.
8 |
--------------------------------------------------------------------------------
/libs/sync/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './lib/home-page';
2 | export * from './lib/logic';
3 | export * from './lib/utils';
4 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/_common-sync.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .page-spacing {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(4);
7 | }
8 | .page-title {
9 | align-items: center;
10 | display: flex;
11 | gap: rhythm(1);
12 | }
13 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/add-sync-page/add-sync-page.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 | @use '../common-sync';
3 |
4 | .inline-form {
5 | pa-select {
6 | flex: 0 0 auto;
7 | min-width: rhythm(16);
8 | width: fit-content;
9 | }
10 | pa-input {
11 | max-width: unset;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/add-sync-page/index.ts:
--------------------------------------------------------------------------------
1 | export * from './add-sync-page.component';
2 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/configuration-form/configuration-form.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .toggle-container pa-toggle ::ng-deep .pa-toggle-context {
4 | justify-content: space-between;
5 | }
6 |
7 | .table-container nsi-info-card {
8 | margin-top: rhythm(1.5);
9 | }
10 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/configuration-form/index.ts:
--------------------------------------------------------------------------------
1 | export * from './configuration.model';
2 | export * from './configuration-form.component';
3 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/folder-selection/folder-selection.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | header {
4 | display: flex;
5 | justify-content: space-between;
6 | margin-bottom: rhythm(2);
7 |
8 | pa-input {
9 | width: rhythm(60);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/folder-selection/index.ts:
--------------------------------------------------------------------------------
1 | export * from './folder-selection.component';
2 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/home-page/connector/connector.component.html:
--------------------------------------------------------------------------------
1 |
4 |
10 |
11 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/home-page/connector/connector.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .connector {
4 | align-items: center;
5 | display: flex;
6 | flex-direction: column;
7 | gap: rhythm(1);
8 | width: rhythm(12);
9 | }
10 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/home-page/connector/index.ts:
--------------------------------------------------------------------------------
1 | export * from './connector.component';
2 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/home-page/index.ts:
--------------------------------------------------------------------------------
1 | export * from './connector';
2 | export * from './home-page.component';
3 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/logic/index.ts:
--------------------------------------------------------------------------------
1 | export * from './models';
2 | export * from './sync.service';
3 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/sync-details-page/folders-tab/folders-tab.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .folders-tab {
4 | position: relative;
5 |
6 | header {
7 | display: flex;
8 | justify-content: space-between;
9 | margin-bottom: rhythm(2);
10 |
11 | pa-input {
12 | width: rhythm(60);
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/sync-details-page/index.ts:
--------------------------------------------------------------------------------
1 | export * from './sync-details-page.component';
2 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/sync-details-page/sync-details-page.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 | @use '../common-sync';
3 |
4 | .details-header {
5 | align-items: center;
6 | display: flex;
7 | justify-content: space-between;
8 | }
9 |
10 | .cta-container {
11 | align-items: center;
12 | display: flex;
13 | gap: rhythm(1);
14 | }
15 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/sync-details-page/sync-settings/index.ts:
--------------------------------------------------------------------------------
1 | export * from './sync-settings.component';
2 |
--------------------------------------------------------------------------------
/libs/sync/src/lib/utils.ts:
--------------------------------------------------------------------------------
1 | export function getURLParams(): string {
2 | let params = location.search;
3 | if (!params && location.href.includes('#')) {
4 | const path = location.href.split('#')[1];
5 | params = path.includes('?') ? '?' + path.split('?')[1] : '?' + path;
6 | }
7 | if (params && params.includes('#') && !params.includes('?')) {
8 | params = params.replace('#', '?');
9 | }
10 | return params;
11 | }
12 |
--------------------------------------------------------------------------------
/libs/sync/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | // @ts-expect-error https://thymikee.github.io/jest-preset-angular/docs/getting-started/test-environment
2 | globalThis.ngJest = {
3 | testEnvironmentOptions: {
4 | errorOnUnknownElements: true,
5 | errorOnUnknownProperties: true,
6 | },
7 | };
8 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
9 |
10 | setupZoneTestEnv();
11 |
--------------------------------------------------------------------------------
/libs/sync/tsconfig.lib.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "declaration": true,
6 | "declarationMap": true,
7 | "inlineSources": true,
8 | "types": []
9 | },
10 | "exclude": ["src/**/*.spec.ts", "src/test-setup.ts", "jest.config.ts", "src/**/*.test.ts"],
11 | "include": ["src/**/*.ts"]
12 | }
13 |
--------------------------------------------------------------------------------
/libs/sync/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "module": "commonjs",
6 | "target": "es2016",
7 | "types": ["jest", "node"]
8 | },
9 | "files": ["src/test-setup.ts"],
10 | "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"]
11 | }
12 |
--------------------------------------------------------------------------------
/libs/user/README.md:
--------------------------------------------------------------------------------
1 | # user
2 |
3 | Library containing everything related to user login/password recovering/onboarding/profile/…
4 |
5 | User module is used in both dashboard and manager apps.
6 |
7 | ## Running unit tests
8 |
9 | Run `nx test user` to execute the unit tests.
10 |
11 |
--------------------------------------------------------------------------------
/libs/user/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './lib';
2 |
--------------------------------------------------------------------------------
/libs/user/src/lib/check-mail/check-mail.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .check-email-container {
4 | padding: 0 rhythm(24);
5 |
6 | img {
7 | // Not using rhythm here because this value is for having the left side of the envelope from the img aligned with the text
8 | margin-left: -28px;
9 | width: rhythm(24);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/libs/user/src/lib/magic/magic.component.html:
--------------------------------------------------------------------------------
1 |
2 | {{ (error ? error : 'onboarding.loading') | translate }}
3 |
4 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/_common-step.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .onboarding-form {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(1.5);
7 | margin-bottom: rhythm(4);
8 |
9 | .field {
10 | display: flex;
11 | flex-direction: column;
12 | gap: rhythm(0.25);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/embeddings-model-form/dynamic-fields.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .dynamic-fields {
4 | display: flex;
5 | flex-direction: column;
6 | gap: rhythm(2);
7 | }
8 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/embeddings-model-form/index.ts:
--------------------------------------------------------------------------------
1 | export * from './embeddings-model-form.component';
2 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/index.ts:
--------------------------------------------------------------------------------
1 | export * from './embeddings-model-form';
2 | export * from './kb-creation-steps';
3 | export * from './setting-up/setting-up.component';
4 | export * from './step1/step1.component';
5 | export * from './vector-database-form';
6 | export * from './onboarding.component';
7 | export * from './onboarding.models';
8 | export * from './onboarding.service';
9 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/kb-creation-steps/index.ts:
--------------------------------------------------------------------------------
1 | export * from './kb-name/kb-name-step.component';
2 | export * from './zone/zone-step.component';
3 | export * from './embedding-model/embedding-model-step.component';
4 | export * from './vector-database/vector-database-step.component';
5 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/setting-up/setting-up.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .setting-up {
4 | min-height: rhythm(24);
5 | }
6 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/step1/step1.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | .phone-field {
4 | display: flex;
5 | .phone-code {
6 | width: rhythm(8);
7 | margin-right: rhythm(1);
8 | }
9 | }
10 |
11 | .consent {
12 | ::ng-deep a {
13 | color: inherit;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/vector-database-form/index.ts:
--------------------------------------------------------------------------------
1 | export * from './vector-database-form.component';
2 |
--------------------------------------------------------------------------------
/libs/user/src/lib/onboarding/vector-database-form/vector-database-form.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 |
3 | :host {
4 | .toggle-container {
5 | background-color: $color-neutral-lightest;
6 | border-radius: rhythm(1);
7 | padding: rhythm(1);
8 | }
9 |
10 | label:not(.pa-toggle-label):not(.pa-field-label) {
11 | color: $color-neutral-regular;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/libs/user/src/lib/password.validator.ts:
--------------------------------------------------------------------------------
1 | import { AbstractControl, ValidatorFn } from '@angular/forms';
2 |
3 | export function SamePassword(passwordField: string): ValidatorFn {
4 | return (control: AbstractControl) => {
5 | const password = control.parent?.get(passwordField)?.value;
6 | const repeatPassword = control.value;
7 | return password === repeatPassword ? null : { passwordMismatch: true };
8 | };
9 | }
10 |
--------------------------------------------------------------------------------
/libs/user/src/lib/recover/recover.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 | @use '../user-layout';
3 |
4 | .main-container {
5 | gap: rhythm(4);
6 |
7 | .recover-form {
8 | display: flex;
9 | flex-direction: column;
10 | gap: rhythm(3);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/libs/user/src/lib/reset/reset.component.scss:
--------------------------------------------------------------------------------
1 | @use 'apps/dashboard/src/variables' as *;
2 | @use '../user-layout';
3 |
--------------------------------------------------------------------------------
/libs/user/src/lib/sso/sso-button.component.html:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/libs/user/src/lib/user-container/index.ts:
--------------------------------------------------------------------------------
1 | export * from './user-container.module';
2 | export * from './user-container.component';
3 |
--------------------------------------------------------------------------------
/libs/user/src/lib/user-container/user-container-logo/user-container-logo.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
![]()
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/libs/user/src/lib/user-container/user-container.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
![]()
6 |
7 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/libs/user/src/lib/user-container/user-container.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { UserContainerComponent } from './user-container.component';
3 | import { CommonModule } from '@angular/common';
4 |
5 | @NgModule({
6 | declarations: [UserContainerComponent],
7 | exports: [UserContainerComponent],
8 | imports: [CommonModule],
9 | })
10 | export class UserContainerModule {}
11 |
--------------------------------------------------------------------------------
/libs/user/src/test-setup.ts:
--------------------------------------------------------------------------------
1 | // @ts-expect-error https://thymikee.github.io/jest-preset-angular/docs/getting-started/test-environment
2 | globalThis.ngJest = {
3 | testEnvironmentOptions: {
4 | errorOnUnknownElements: true,
5 | errorOnUnknownProperties: true,
6 | },
7 | };
8 | import { setupZoneTestEnv } from 'jest-preset-angular/setup-env/zone';
9 |
10 | setupZoneTestEnv();
11 |
--------------------------------------------------------------------------------
/libs/user/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../../dist/out-tsc",
5 | "module": "commonjs",
6 | "target": "es2016",
7 | "types": ["jest", "node"]
8 | },
9 | "files": ["src/test-setup.ts"],
10 | "include": [
11 | "jest.config.ts",
12 | "src/**/*.test.ts",
13 | "src/**/*.spec.ts",
14 | "src/**/*.d.ts"
15 | ]
16 | }
17 |
--------------------------------------------------------------------------------
/maintenance/assets/maintenance-background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/maintenance/assets/maintenance-background.jpg
--------------------------------------------------------------------------------
/mrs.developer.json:
--------------------------------------------------------------------------------
1 | {
2 | "pastanaga-angular": {
3 | "url": "git@github.com:plone/pastanaga-angular.git",
4 | "https": "https://github.com/plone/pastanaga-angular.git",
5 | "path": "/projects/pastanaga-angular/src",
6 | "package": "@guillotinaweb/pastanaga-angular",
7 | "tag": "2.69.3"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/nginx/auth.default.conf:
--------------------------------------------------------------------------------
1 | server {
2 | listen 80;
3 | server_name stashify-auth;
4 | root /dist/;
5 | index index.html;
6 | location / {
7 | try_files $uri /index.html =404;
8 | }
9 | error_page 500 502 503 504 /50x.html;
10 | location = /50x.html {
11 | root /usr/share/nginx/html;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/tools/build-sdk-docs.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | # exit when any command fails
3 | set -e
4 |
5 | echo "Build SDK docs"
6 | cd libs/sdk-core
7 | npx typedoc --plugin typedoc-plugin-markdown --excludePrivate ./src/index.ts
8 | cd -
--------------------------------------------------------------------------------
/tools/python-nucliadb-admin-dist/MANIFEST.in:
--------------------------------------------------------------------------------
1 | recursive-include nucliadb_admin_assets *
2 |
--------------------------------------------------------------------------------
/tools/python-nucliadb-admin-dist/Makefile:
--------------------------------------------------------------------------------
1 | .PHONY: publish
2 | publish:
3 | python bump.py $(ARGS)
4 | pip install wheel twine
5 | pip wheel -w dist ./
6 | twine upload dist/*
7 |
--------------------------------------------------------------------------------
/tools/python-nucliadb-admin-dist/README.md:
--------------------------------------------------------------------------------
1 | # Overview
2 |
3 | This folder contains the skeleton for creating a python package that is uploaded to pypi
4 | and contains the assets for the NucliaDB admin app.
5 |
--------------------------------------------------------------------------------
/tools/python-nucliadb-admin-dist/VERSION:
--------------------------------------------------------------------------------
1 | 1.0.0
--------------------------------------------------------------------------------
/tools/python-nucliadb-admin-dist/nucliadb_admin_assets/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nuclia/frontend/b509e9ca77b6a138ebf6986bd290dee0f3abfa73/tools/python-nucliadb-admin-dist/nucliadb_admin_assets/__init__.py
--------------------------------------------------------------------------------
/tools/tsconfig.tools.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../dist/out-tsc/tools",
5 | "rootDir": ".",
6 | "module": "commonjs",
7 | "target": "es5",
8 | "types": ["node"]
9 | },
10 | "include": ["**/*.ts"]
11 | }
12 |
--------------------------------------------------------------------------------