@inriver/inri 1.18.0 → 1.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@inriver/inri": minor
3
+ ---
4
+
5
+ Update documentation
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @inriver/inri
2
2
 
3
+ ## 1.19.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Update documentation
8
+ - Updating README and exporting tailwing config
9
+
3
10
  ## 1.18.0
4
11
 
5
12
  ### Minor Changes
package/README.md CHANGED
@@ -10,22 +10,56 @@ Before installing and using *inri*, please make sure you have the following peer
10
10
  * vue version 3.x.x or any compatible version starting with 3
11
11
  * vue-i18n version 9.1.7 or any compatible version starting with 9.1
12
12
  * vue-router version 4.0.12 or any compatible version starting with 4
13
- * WindiCSS - Follow this guide how to set it up https://windicss.org/integrations/
13
+ * WindiCSS - Follow this guide how to set it up https://windicss.org/guide/installation.html
14
14
 
15
15
  ## Installation
16
16
 
17
+ * Create a `.npmrc` file and add the following line `//registry.npmjs.org/:_authToken=${NPM_TOKEN}`
18
+
19
+ * Create `.env` file that is `.gitignored` (important!)
20
+
21
+ * Get the token from the `inri-access-group` variable group located in the pipelines
22
+
23
+
17
24
  ```
18
25
  pnpm install @inriver/inri
19
26
  pnpm install quasar@2.12.1 vue@^3.3.4 vue-i18n@^9.1.7 vue-router@^4.0.12
20
27
  ```
21
28
 
22
- ## Example
29
+ ## Deploying your app with the inri framework
30
+
31
+
32
+ The build stage must also have access to the `inri-access-group`
33
+ Add it to your stage for example
34
+ ```
35
+ stages:
36
+ - stage: Build
37
+ dependsOn:
38
+ variables:
39
+ - template: 'someTemplate.yml'
40
+ - group: inri-access-token
41
+ jobs:
42
+ ...
43
+ ```
44
+ Your build pipeline must have access to the .npmrc file so add this script
45
+ to the build stage of your pipeline.
46
+
47
+ ```
48
+ - bash: |
49
+ echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > .npmrc
50
+ env:
51
+ NPM_TOKEN: $(NPM_TOKEN)
52
+ displayName: Init .npmrc file
53
+ ```
54
+
55
+ ## Initializing the framework
23
56
 
24
57
  main.ts (entry file)
58
+ It's importing that you import the `virtual:windi.css` after the App import
25
59
  ```
26
- import 'virtual:windi.css';
27
60
  import { createApp } from 'vue';
28
61
  import App from './App.vue';
62
+ import 'virtual:windi.css';
29
63
 
30
64
  import { initInriFramework } from '@inriver/inri';
31
65
  const app = createApp(App);
@@ -46,18 +80,19 @@ CSS
46
80
  Create a tailwind.config.js file and copy this
47
81
 
48
82
  ```
49
- import baseConfig from '@inriver/inri/configs/base-tailwind-config'
83
+ import { baseTailwindConfig } from './node_modules/@inriver/inri/configs/base-tailwind-config'
50
84
 
51
85
  export default {
52
- ...baseConfig,
86
+ ...baseTailwindConfig,
53
87
  extract: {
54
88
  include: [
55
- '../inri/src/**/*.{vue,html,jsx,tsx}',
89
+ './node_modules/@inriver/inri/src/**/*.{vue,html,jsx,tsx}',
56
90
  'src/**/*.{vue,html,jsx,tsx}',
57
91
  ],
58
92
  },
59
93
  }
60
94
 
95
+
61
96
  ```
62
97
  ### Using changesets
63
98
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inriver/inri",
3
- "version": "1.18.0",
3
+ "version": "1.20.0",
4
4
  "peerDependencies": {
5
5
  "quasar": "2.12.1",
6
6
  "vue": "^3.3.4",
@@ -52,7 +52,7 @@ defineProps({
52
52
  </script>
53
53
 
54
54
  <style lang="scss">
55
- .c-btn {
55
+ .c-inri-btn {
56
56
  height: 40px;
57
57
  font-weight: 600;
58
58
  padding: 4px 56px !important;
@@ -6,7 +6,7 @@
6
6
  @click.prevent
7
7
  >
8
8
  <q-menu>
9
- <q-list class="menu-list pb-0">
9
+ <q-list class="c-inri-menu-list pb-0">
10
10
  <slot />
11
11
  </q-list>
12
12
  </q-menu>
@@ -23,7 +23,7 @@ defineProps({
23
23
  </script>
24
24
 
25
25
  <style scoped lang="scss">
26
- .menu-list {
26
+ .c-inri-menu-list {
27
27
  min-width: 146px;
28
28
  }
29
29
  </style>
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <q-dialog
3
3
  data-id="dialog"
4
- class="c-dialog"
4
+ class="c-inri-dialog"
5
5
  :model-value="modelValue"
6
6
  :position="position"
7
7
  transition-show="fade"
@@ -192,7 +192,7 @@ defineExpose({
192
192
 
193
193
  <style lang="scss">
194
194
  // This css is also shared by the programmatic dialogs
195
- .c-dialog {
195
+ .c-inri-dialog {
196
196
  .q-dialog__backdrop {
197
197
  background: var(--dialog-backdrop-color);
198
198
  }
@@ -210,11 +210,11 @@ defineExpose({
210
210
  }
211
211
 
212
212
  .dialog-card-action-buttons {
213
- .c-btn {
213
+ .c-inri-btn {
214
214
  width: 100%;
215
215
  }
216
216
 
217
- .c-btn + .c-btn {
217
+ .c-inri-btn + .c-inri-btn {
218
218
  margin-top: 16px;
219
219
  }
220
220
  }
@@ -222,13 +222,13 @@ defineExpose({
222
222
 
223
223
  // 'sm' displays
224
224
  @media (min-width: 640px) {
225
- .c-dialog {
225
+ .c-inri-dialog {
226
226
  .dialog-card-action-buttons {
227
- .c-btn {
227
+ .c-inri-btn {
228
228
  width: auto;
229
229
  }
230
230
 
231
- .c-btn + .c-btn {
231
+ .c-inri-btn + .c-inri-btn {
232
232
  margin-top: 0;
233
233
  margin-left: 10px;
234
234
  }
@@ -238,7 +238,7 @@ defineExpose({
238
238
 
239
239
  // 'md' displays
240
240
  @media (min-width: 1024px) {
241
- .c-dialog {
241
+ .c-inri-dialog {
242
242
  // position="top" (default) should be offset with 60px from the top
243
243
  .q-dialog__inner.fixed-top {
244
244
  padding: 0 60px;
@@ -2,7 +2,7 @@
2
2
  <q-btn
3
3
  ref="drawerButton"
4
4
  data-id="drawer-btn"
5
- class="drawer-button group"
5
+ class="c-inri-drawer-button group"
6
6
  :class="{
7
7
  'is-left': left,
8
8
  'w-60px sm:w-340px': isOpen,
@@ -63,7 +63,7 @@ function toggle () {
63
63
  </script>
64
64
 
65
65
  <style lang="scss">
66
- .drawer-button {
66
+ .c-inri-drawer-button {
67
67
  height: 60px;
68
68
  border-radius: 0;
69
69
  transition: width 0.1s;
@@ -83,7 +83,7 @@ function toggle () {
83
83
  }
84
84
 
85
85
  // Left side drawer button
86
- .drawer-button.is-left {
86
+ .c-inri-drawer-button.is-left {
87
87
  .q-btn__content {
88
88
  justify-content: end;
89
89
  }
@@ -2,7 +2,7 @@
2
2
  <q-expansion-item
3
3
  :label="label"
4
4
  :header-class="headerClass"
5
- class="c-expansion-item"
5
+ class="c-inri-expansion-item"
6
6
  >
7
7
  <slot />
8
8
  </q-expansion-item>
@@ -22,7 +22,7 @@ defineProps({
22
22
  </script>
23
23
 
24
24
  <style lang="scss">
25
- .c-expansion-item {
25
+ .c-inri-expansion-item {
26
26
  border-bottom: 1px solid var(--color-border);
27
27
 
28
28
  .q-item__section {
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <q-expansion-item
3
3
  :header-class="headerClass"
4
- class="c-expansion-item"
4
+ class="c-inri-expansion-item"
5
5
  >
6
6
  <template #header>
7
7
  <q-checkbox
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div
3
3
  v-if="showExtendedMenu"
4
- class="header-links gt-sm"
4
+ class="c-inri-header-links gt-sm"
5
5
  >
6
6
  <c-header-menu-link
7
7
  v-for="link in links"
@@ -52,7 +52,7 @@ const showExtendedMenu = computed(() => props.maxVisible >= props.links.length)
52
52
  </script>
53
53
 
54
54
  <style scoped>
55
- .header-links {
55
+ .c-inri-header-links {
56
56
  margin-right: 32px;
57
57
  height: 100%;
58
58
  display: flex;
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <a
3
- class="link"
3
+ class="c-inri-link"
4
4
  :class="{ 'is-active': isActive }"
5
5
  :href="href"
6
6
  >
@@ -21,7 +21,7 @@ defineProps<Props>()
21
21
  </script>
22
22
 
23
23
  <style scoped>
24
- .link {
24
+ .c-inri-link {
25
25
  display: flex;
26
26
  align-items: center;
27
27
  font-size: 16px;
@@ -31,7 +31,7 @@ defineProps<Props>()
31
31
  min-width: 0;
32
32
  }
33
33
 
34
- .link:hover {
34
+ .c-inri-link:hover {
35
35
  text-decoration: underline;
36
36
  }
37
37
 
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <q-btn
3
- class="c-icon-btn"
3
+ class="c-inri-icon-btn"
4
4
  flat
5
5
  round
6
6
  :color="color"
@@ -61,7 +61,7 @@ defineProps({
61
61
  <style scoped lang="scss">
62
62
  $size: 32px;
63
63
 
64
- .c-icon-btn {
64
+ .c-inri-icon-btn {
65
65
  height: $size;
66
66
  width: $size;
67
67
  min-height: $size;
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <section
3
- class="c-section"
3
+ class="c-inri-section"
4
4
  :class="{
5
5
  'overflow-y-overlay': scroll || main,
6
6
  'flex-1': flex || main,
@@ -23,7 +23,7 @@ defineProps({
23
23
  </script>
24
24
 
25
25
  <style>
26
- .c-section {
26
+ .c-inri-section {
27
27
  @apply py-7 px-6;
28
28
  }
29
29
  </style>
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <q-select
3
3
  ref="selectRef"
4
- class="c-select"
4
+ class="c-inri-select"
5
5
  :model-value="modelValue"
6
6
  v-bind="dense ? $inri.inputDense : $inri.input"
7
7
  :options="internalOptions"
@@ -191,7 +191,7 @@ function onToggleAll (evt, emitString) {
191
191
  </script>
192
192
 
193
193
  <style lang="scss">
194
- .c-select {
194
+ .c-inri-select {
195
195
  ::placeholder {
196
196
  color: var(--color-text);
197
197
  }
@@ -3,13 +3,13 @@
3
3
 
4
4
  <div class="absolute overflow-hidden inset-0">
5
5
  <div
6
- class="bg-white slide-box"
6
+ class="bg-white c-inri-slide-box"
7
7
  :class="slideOffsetClasses"
8
8
  />
9
9
 
10
10
  <!-- Slider -->
11
11
  <div
12
- class="slide-box"
12
+ class="c-inri-slide-box"
13
13
  :class="[transitionBg, slideOffsetClasses]"
14
14
  />
15
15
  </div>
@@ -56,7 +56,7 @@ const transitionBg = computed(() => {
56
56
  </script>
57
57
 
58
58
  <style scoped>
59
- .slide-box {
59
+ .c-inri-slide-box {
60
60
  @apply absolute transition-all duration-500 w-full h-full top-0;
61
61
  }
62
62
  </style>
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div
3
- class="c-spinner"
3
+ class="c-inri-spinner"
4
4
  :style="{
5
5
  width: size + 'px',
6
6
  height: size + 'px',
@@ -63,7 +63,7 @@ const transitionColor = computed(() => {
63
63
  // Based on:
64
64
  // https://codepen.io/joshuaward/pen/XejbZv
65
65
 
66
- .c-spinner {
66
+ .c-inri-spinner {
67
67
  display: grid;
68
68
  grid-template-columns: 1fr 1fr 1fr;
69
69
 
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <q-btn
3
3
  ref="button"
4
- class="c-tile-btn group"
4
+ class="c-inri-tile-btn group"
5
5
  :class="{
6
6
  'c-tile-btn--small': small,
7
7
  'pointer-events-none': loading
@@ -154,7 +154,7 @@ const tooltipRightDataId = computed(() => {
154
154
  </script>
155
155
 
156
156
  <style lang="scss">
157
- .c-tile-btn {
157
+ .c-inri-tile-btn {
158
158
  padding: 0;
159
159
  width: 60px;
160
160
  height: 60px;
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div
3
3
  ref="card"
4
- class="c-small-card"
4
+ class="c-inri-small-card"
5
5
  @mouseover="isHoveredOver = true"
6
6
  @mouseleave="isHoveredOver = false"
7
7
  @click="$emit('click', $event)"
@@ -106,7 +106,7 @@ defineProps({
106
106
  </script>
107
107
 
108
108
  <style scoped lang="scss">
109
- .c-small-card {
109
+ .c-inri-small-card {
110
110
  width: var(--small-card-image-size);
111
111
  min-height: 100px;
112
112
 
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <q-dialog
3
3
  ref="dialogRef"
4
- class="c-dialog"
4
+ class="c-inri-dialog"
5
5
  @hide="onDialogHide"
6
6
  >
7
7
  <q-card
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="c-page">
2
+ <div class="c-inri-page">
3
3
  <slot />
4
4
  </div>
5
5
  </template>
@@ -11,7 +11,7 @@ export default {
11
11
  </script>
12
12
 
13
13
  <style scoped>
14
- .c-page {
14
+ .c-inri-page {
15
15
  position: absolute;
16
16
  width: 100%;
17
17
  height: 100%;
@@ -1,5 +1,5 @@
1
1
  .c-notify {
2
- .c-spinner {
2
+ .c-inri-spinner {
3
3
  width: 18px !important;
4
4
  height: 18px !important;
5
5
  color: #fff !important;