Sha256: df00a637e35370fba0fe568481c52c288abf3fd56a11d0adee112ef257a48106

Contents?: true

Size: 1.48 KB

Versions: 13

Compression:

Stored size: 1.48 KB

Contents

<template>
  <div class="column">
    <h2 class="is-size-2 mb-4">New rule</h2>

    <InputForm v-model:yaml="yaml" @update-yaml="updateYAML"></InputForm>

    <div class="field is-grouped is-grouped-centered">
      <p class="control">
        <a class="button is-primary" @click="create">
          <span class="icon is-small">
            <font-awesome-icon icon="plus"></font-awesome-icon>
          </span>
          <span>Create</span>
        </a>
      </p>
    </div>

    <div v-if="createRuleTask.last?.error">
      <hr />
      <ErrorMessage :error="createRuleTask.last?.error"></ErrorMessage>
    </div>
  </div>
</template>

<script lang="ts">
import { defineComponent, ref } from "vue"
import { useRouter } from "vue-router"

import { generateCreateRuleTask } from "@/api-helper"
import ErrorMessage from "@/components/ErrorMessage.vue"
import InputForm from "@/components/rule/InputForm.vue"
import { getRuleTemplate } from "@/rule"

export default defineComponent({
  name: "NewRule",
  components: {
    InputForm,
    ErrorMessage
  },
  setup() {
    const router = useRouter()

    const yaml = ref(getRuleTemplate())

    const createRuleTask = generateCreateRuleTask()

    const updateYAML = (value: string) => {
      yaml.value = value
    }

    const create = async () => {
      const rule = await createRuleTask.perform({ yaml: yaml.value })

      router.push({ name: "Rule", params: { id: rule.id } })
    }

    return { yaml, create, updateYAML, createRuleTask }
  }
})
</script>

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
mihari-5.5.0 frontend/src/components/rule/NewRule.vue
mihari-5.4.9 frontend/src/components/rule/NewRule.vue
mihari-5.4.8 frontend/src/components/rule/NewRule.vue
mihari-5.4.7 frontend/src/components/rule/NewRule.vue
mihari-5.4.6 frontend/src/components/rule/NewRule.vue
mihari-5.4.5 frontend/src/components/rule/NewRule.vue
mihari-5.4.4 frontend/src/components/rule/NewRule.vue
mihari-5.4.3 frontend/src/components/rule/NewRule.vue
mihari-5.4.2 frontend/src/components/rule/NewRule.vue
mihari-5.4.1 frontend/src/components/rule/NewRule.vue
mihari-5.4.0 frontend/src/components/rule/NewRule.vue
mihari-5.3.2 frontend/src/components/rule/NewRule.vue
mihari-5.3.1 frontend/src/components/rule/NewRule.vue