godown 2.7.1 → 2.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -16,6 +16,13 @@ npm i godown
16
16
  <g-alert title="Alert"></g-alert>
17
17
  ```
18
18
 
19
+ Can't use a single tag.
20
+
21
+ ```html
22
+ <g-alert title="Alert"/>
23
+ <!-- ERROR -->
24
+ ```
25
+
19
26
  ### JS
20
27
 
21
28
  ```js
@@ -52,6 +59,8 @@ export default function () {
52
59
 
53
60
  ### Custom element tag name
54
61
 
62
+ The name must contain `-`.
63
+
55
64
  ```js
56
65
  import { defineConfig } from "godown/conf";
57
66
 
@@ -104,7 +113,7 @@ The CSS variable of the element will be `${cssvar} + element name + description`
104
113
  The following CSS variables now affect element styles.
105
114
 
106
115
  ```html
107
- <g-button scale style="--ge--g-button--focus-scale:.95;"></g-button>
116
+ <g-button style="--ge--g-button--focus-scale: .95;"></g-button>
108
117
  ```
109
118
 
110
119
  ### Custom initial property
@@ -124,7 +133,7 @@ defineConfig({
124
133
  Assign when elements are **connected**.
125
134
 
126
135
  ```html
127
- <g-button class="godown-element custom-element" color="blue"> Button </g-button>
136
+ <g-button class="godown-element custom-element" color="blue">Button</g-button>
128
137
 
129
138
  <g-input class="godown-element custom-element" color="blue"></g-input>
130
139
  ```
package/conf.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type GodownElement from "./godown-element";
2
- import naming from "./naming";
2
+ import naming from "./naming.js";
3
3
  export declare const conf: ConfType;
4
4
  export declare function init(config: Partial<ConfType>, source?: ConfType): ConfType;
5
5
  export declare function defineConfig(config: Parameters<typeof init>[0]): ConfType;
package/conf.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"conf.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["conf.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,MAAM,MAAM,UAAU,CAAC;AA8B9B,eAAO,MAAM,IAAI,EAAE,QAAkE,CAAC;AAEtF,wBAAgB,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAE,QAAe,GAAG,QAAQ,CAajF;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAEzE;AAED,eAAe,IAAI,CAAC;AAEpB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,UAAU;QAClB,uBAAuB,EAAE,QAAQ,CAAC;KACnC;IACD,UAAU,gBAAgB;QACxB,eAAe,EAAE,WAAW,CAAC;KAC9B;CACF;AAED,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACrD;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,MAAM,EAAE,EAAE,GAAG,MAAM,OAAO,MAAM,CAAC;IACjC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAChC;;;;;;OAMG;IACH,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,WAAW,EAAE,wBAAwB,EAAE,OAAO,CAAC,EAAE,wBAAwB,KAAK,IAAI,CAAC;CAClH;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,OAAO,aAAa,CAAC;QAClC,OAAO,CAAC,EAAE,wBAAwB,CAAC;KACpC,CAAC;CACH;AAED,MAAM,WAAW,MAAM,CAAC,CAAC,EAAE,CAAC;IAC1B,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IACnB,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,WAAW,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAC1F,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAA;CAAE,CAAC,CAAC;AACjH,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE;IAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;CAAE,CAAC,CAAC;AACxG,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"conf.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["conf.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,MAAM,MAAM,aAAa,CAAC;AA8BjC,eAAO,MAAM,IAAI,EAAE,QAAkE,CAAC;AAEtF,wBAAgB,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAE,QAAe,GAAG,QAAQ,CAajF;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAEzE;AAED,eAAe,IAAI,CAAC;AAEpB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,UAAU;QAClB,uBAAuB,EAAE,QAAQ,CAAC;KACnC;IACD,UAAU,gBAAgB;QACxB,eAAe,EAAE,WAAW,CAAC;KAC9B;CACF;AAED,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACrD;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,MAAM,EAAE,EAAE,GAAG,MAAM,OAAO,MAAM,CAAC;IACjC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAChC;;;;;;OAMG;IACH,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,WAAW,EAAE,wBAAwB,EAAE,OAAO,CAAC,EAAE,wBAAwB,KAAK,IAAI,CAAC;CAClH;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,OAAO,aAAa,CAAC;QAClC,OAAO,CAAC,EAAE,wBAAwB,CAAC;KACpC,CAAC;CACH;AAED,MAAM,WAAW,MAAM,CAAC,CAAC,EAAE,CAAC;IAC1B,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IACnB,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,WAAW,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;AAC1F,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAA;CAAE,CAAC,CAAC;AACjH,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE;IAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;CAAE,CAAC,CAAC;AACxG,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
package/conf.js CHANGED
@@ -1,4 +1,4 @@
1
- import naming from "./naming";
1
+ import naming from "./naming.js";
2
2
  const defaultConfig = {
3
3
  assign: null,
4
4
  cssvar: "godown",
package/conf.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"conf.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["conf.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,MAAM,aAAa,GAAa;IAC9B,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,IAAI,GAAG,EAAE;IACnB,OAAO,EAAE,IAAI,GAAG,EAAE;IAClB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,GAAG,CAAC,MAAc;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,IAAY,EAAE,WAAqC,EAAE,OAAkC;QAC5F,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACvD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/B,WAAoC,CAAC,cAAc,GAAG,OAAO,CAAC;QAC/D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACxC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAa,IAAI,CAAC,UAAU,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC;AAEtF,MAAM,UAAU,IAAI,CAAC,MAAyB,EAAE,SAAmB,IAAI;IACrE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,yBAAyB;QACzB,UAAU,CAAC,uBAAuB,GAAG,MAAM,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,OAAO,UAAU,CAAC,uBAAuB,CAAC;QAC5C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,WAAW;QACb,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAkC;IAC7D,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,eAAe,IAAI,CAAC","sourcesContent":["import type GodownElement from \"./godown-element\";\nimport naming from \"./naming\";\n\nconst defaultConfig: ConfType = {\n assign: null,\n cssvar: \"godown\",\n classMap: new Map(),\n nameMap: new Map(),\n naming: \"latest\",\n reflect: false,\n prefix: \"\",\n suffix: \"\",\n tag(origin: string) {\n if (this.naming) {\n origin = naming[this.naming]?.get(origin) || origin;\n }\n return origin;\n },\n define(name: string, constructor: CustomElementConstructor, options?: ElementDefinitionOptions) {\n name ||= constructor.name.replace(/([a-z])([A-Z])/g, \"$1-$2\").toLowerCase();\n const tagName = this.prefix + this.tag(name) + this.suffix;\n if (!tagName.includes(\"-\") || customElements.get(name)) {\n return;\n }\n this.nameMap.set(name, tagName);\n (constructor as typeof GodownElement).elementTagName = tagName;\n conf.classMap.set(tagName, constructor);\n customElements.define(tagName, constructor, options);\n },\n};\n\nexport const conf: ConfType = init(globalThis.GodownWebComponentsCONF, defaultConfig);\n\nexport function init(config: Partial<ConfType>, source: ConfType = conf): ConfType {\n Object.assign(source, config);\n if (source.reflect) {\n // Reflect to globalThis.\n globalThis.GodownWebComponentsCONF = source;\n } else {\n try {\n delete globalThis.GodownWebComponentsCONF;\n } catch (e) {\n /* empty */\n }\n }\n return source;\n}\n\nexport function defineConfig(config: Parameters<typeof init>[0]): ConfType {\n return init(config, conf);\n}\n\nexport default conf;\n\ndeclare global {\n interface globalThis {\n GodownWebComponentsCONF: ConfType;\n }\n interface DocumentEventMap {\n \"godown-define\": DefineEvent;\n }\n}\n\nexport interface ConfType {\n /**\n * When a {@linkcode GodownElement} element is created, assign to the element.\n */\n assign: null | Record<string, any>;\n /**\n * CSS variable prefix, without `--`.\n */\n cssvar: string;\n /**\n * Mapping of element names to constructors.\n */\n classMap: Accessor<string, CustomElementConstructor>;\n /**\n * Mapping of element names.\n */\n nameMap: Accessor<string, string>;\n naming: \"\" | keyof typeof naming;\n /**\n * Reflect to globalThis.\n */\n reflect: boolean;\n /**\n * Name prefix.\n */\n prefix: string;\n /**\n * Name suffix.\n */\n suffix: string;\n /**\n *\n * @param origin\n * @returns Name to define.\n * If the name is not in {@linkcode ConfType.nameMap},\n * the name is {@linkcode ConfType.prefix} + `origin` + {@linkcode ConfType.tag.suffix}.\n */\n tag: (origin: string) => string;\n /**\n * Define a Element.\n *\n * @param name Define name.\n * @param constructor Custom element constructor.\n * @param options Element definition options.\n */\n define: (name: string | void, constructor: CustomElementConstructor, options?: ElementDefinitionOptions) => void;\n}\n\nexport interface DefineEvent {\n detail: {\n name: string;\n constructor: typeof GodownElement;\n options?: ElementDefinitionOptions;\n };\n}\n\nexport interface GetSet<K, V> {\n get: (key: K) => V;\n set(key: K, value: V): void;\n}\n\nexport type MixedRecord<K, V, M> = M | (K extends PropertyKey ? M & Record<K, V> : never);\nexport type SetAccessor<K = string, V = string | undefined> = MixedRecord<K, V, { set(key: K, value: V): void }>;\nexport type GetAccessor<K = string, V = string | undefined> = MixedRecord<K, V, { get: (key: K) => V }>;\nexport type Accessor<K = string, V = string | undefined> = GetAccessor<K, V> & SetAccessor<K, V>;\n"]}
1
+ {"version":3,"file":"conf.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["conf.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,aAAa,GAAa;IAC9B,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,IAAI,GAAG,EAAE;IACnB,OAAO,EAAE,IAAI,GAAG,EAAE;IAClB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,GAAG,CAAC,MAAc;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,IAAY,EAAE,WAAqC,EAAE,OAAkC;QAC5F,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACvD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/B,WAAoC,CAAC,cAAc,GAAG,OAAO,CAAC;QAC/D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACxC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAa,IAAI,CAAC,UAAU,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC;AAEtF,MAAM,UAAU,IAAI,CAAC,MAAyB,EAAE,SAAmB,IAAI;IACrE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,yBAAyB;QACzB,UAAU,CAAC,uBAAuB,GAAG,MAAM,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,OAAO,UAAU,CAAC,uBAAuB,CAAC;QAC5C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,WAAW;QACb,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAkC;IAC7D,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,eAAe,IAAI,CAAC","sourcesContent":["import type GodownElement from \"./godown-element\";\nimport naming from \"./naming.js\";\n\nconst defaultConfig: ConfType = {\n assign: null,\n cssvar: \"godown\",\n classMap: new Map(),\n nameMap: new Map(),\n naming: \"latest\",\n reflect: false,\n prefix: \"\",\n suffix: \"\",\n tag(origin: string) {\n if (this.naming) {\n origin = naming[this.naming]?.get(origin) || origin;\n }\n return origin;\n },\n define(name: string, constructor: CustomElementConstructor, options?: ElementDefinitionOptions) {\n name ||= constructor.name.replace(/([a-z])([A-Z])/g, \"$1-$2\").toLowerCase();\n const tagName = this.prefix + this.tag(name) + this.suffix;\n if (!tagName.includes(\"-\") || customElements.get(name)) {\n return;\n }\n this.nameMap.set(name, tagName);\n (constructor as typeof GodownElement).elementTagName = tagName;\n conf.classMap.set(tagName, constructor);\n customElements.define(tagName, constructor, options);\n },\n};\n\nexport const conf: ConfType = init(globalThis.GodownWebComponentsCONF, defaultConfig);\n\nexport function init(config: Partial<ConfType>, source: ConfType = conf): ConfType {\n Object.assign(source, config);\n if (source.reflect) {\n // Reflect to globalThis.\n globalThis.GodownWebComponentsCONF = source;\n } else {\n try {\n delete globalThis.GodownWebComponentsCONF;\n } catch (e) {\n /* empty */\n }\n }\n return source;\n}\n\nexport function defineConfig(config: Parameters<typeof init>[0]): ConfType {\n return init(config, conf);\n}\n\nexport default conf;\n\ndeclare global {\n interface globalThis {\n GodownWebComponentsCONF: ConfType;\n }\n interface DocumentEventMap {\n \"godown-define\": DefineEvent;\n }\n}\n\nexport interface ConfType {\n /**\n * When a {@linkcode GodownElement} element is created, assign to the element.\n */\n assign: null | Record<string, any>;\n /**\n * CSS variable prefix, without `--`.\n */\n cssvar: string;\n /**\n * Mapping of element names to constructors.\n */\n classMap: Accessor<string, CustomElementConstructor>;\n /**\n * Mapping of element names.\n */\n nameMap: Accessor<string, string>;\n naming: \"\" | keyof typeof naming;\n /**\n * Reflect to globalThis.\n */\n reflect: boolean;\n /**\n * Name prefix.\n */\n prefix: string;\n /**\n * Name suffix.\n */\n suffix: string;\n /**\n *\n * @param origin\n * @returns Name to define.\n * If the name is not in {@linkcode ConfType.nameMap},\n * the name is {@linkcode ConfType.prefix} + `origin` + {@linkcode ConfType.tag.suffix}.\n */\n tag: (origin: string) => string;\n /**\n * Define a Element.\n *\n * @param name Define name.\n * @param constructor Custom element constructor.\n * @param options Element definition options.\n */\n define: (name: string | void, constructor: CustomElementConstructor, options?: ElementDefinitionOptions) => void;\n}\n\nexport interface DefineEvent {\n detail: {\n name: string;\n constructor: typeof GodownElement;\n options?: ElementDefinitionOptions;\n };\n}\n\nexport interface GetSet<K, V> {\n get: (key: K) => V;\n set(key: K, value: V): void;\n}\n\nexport type MixedRecord<K, V, M> = M | (K extends PropertyKey ? M & Record<K, V> : never);\nexport type SetAccessor<K = string, V = string | undefined> = MixedRecord<K, V, { set(key: K, value: V): void }>;\nexport type GetAccessor<K = string, V = string | undefined> = MixedRecord<K, V, { get: (key: K) => V }>;\nexport type Accessor<K = string, V = string | undefined> = GetAccessor<K, V> & SetAccessor<K, V>;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "godown",
3
- "version": "2.7.1",
3
+ "version": "2.7.3",
4
4
  "main": "./index.js",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -80,6 +80,7 @@
80
80
  "./tabs": "./tabs.js",
81
81
  "./clip": "./clip.js",
82
82
  "./overbreath": "./overbreath.js",
83
+ "./text": "./text.js",
83
84
  "./time": "./time.js",
84
85
  "./typewriter": "./typewriter.js",
85
86
  "./tooltip": "./tooltip.js",
package/react/index.d.ts CHANGED
@@ -26,6 +26,7 @@ export declare const Skeleton: import("@lit/react").ReactWebComponent<import("..
26
26
  export declare const Tabs: import("@lit/react").ReactWebComponent<import("../web-components/tabs/tabs.js").Tabs, {}>;
27
27
  export declare const Clip: import("@lit/react").ReactWebComponent<import("../web-components/text/clip.js").Clip, {}>;
28
28
  export declare const Overbreath: import("@lit/react").ReactWebComponent<import("../web-components/text/overbreath.js").Overbreath, {}>;
29
+ export declare const Text: import("@lit/react").ReactWebComponent<import("../web-components/text/text.js").Text, {}>;
29
30
  export declare const Time: import("@lit/react").ReactWebComponent<import("../web-components/text/time.js").Time, {}>;
30
31
  export declare const Typewriter: import("@lit/react").ReactWebComponent<import("../web-components/text/typewriter.js").Typewriter, {}>;
31
32
  export declare const Tooltip: import("@lit/react").ReactWebComponent<import("../web-components/tooltip/tooltip.js").Tooltip, {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["react/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,CAAC,kFAEZ,CAAC;AAEH,eAAO,MAAM,KAAK,8FAEhB,CAAC;AAEH,eAAO,MAAM,MAAM,iGAEjB,CAAC;AAEH,eAAO,MAAM,MAAM,iGAEjB,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,QAAQ,uGAEnB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC;AAEH,eAAO,MAAM,MAAM,iGAEjB,CAAC;AAEH,eAAO,MAAM,IAAI,mGAEf,CAAC;AAEH,eAAO,MAAM,WAAW,2GAEtB,CAAC;AAEH,eAAO,MAAM,YAAY,6GAEvB,CAAC;AAEH,eAAO,MAAM,KAAK,8FAEhB,CAAC;AAEH,eAAO,MAAM,UAAU,yGAErB,CAAC;AAEH,eAAO,MAAM,WAAW,2GAEtB,CAAC;AAEH,eAAO,MAAM,WAAW,2GAEtB,CAAC;AAEH,eAAO,MAAM,UAAU,yGAErB,CAAC;AAEH,eAAO,MAAM,WAAW,2GAEtB,CAAC;AAEH,eAAO,MAAM,OAAO,mGAElB,CAAC;AAEH,eAAO,MAAM,QAAQ,sGAEnB,CAAC;AAEH,eAAO,MAAM,SAAS,wGAEpB,CAAC;AAEH,eAAO,MAAM,UAAU,0GAErB,CAAC;AAEH,eAAO,MAAM,QAAQ,uGAEnB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC;AAEH,eAAO,MAAM,MAAM,0GAEjB,CAAC;AAEH,eAAO,MAAM,QAAQ,uGAEnB,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,UAAU,uGAErB,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,UAAU,uGAErB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["react/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,CAAC,kFAEZ,CAAC;AAEH,eAAO,MAAM,KAAK,8FAEhB,CAAC;AAEH,eAAO,MAAM,MAAM,iGAEjB,CAAC;AAEH,eAAO,MAAM,MAAM,iGAEjB,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,QAAQ,uGAEnB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC;AAEH,eAAO,MAAM,MAAM,iGAEjB,CAAC;AAEH,eAAO,MAAM,IAAI,mGAEf,CAAC;AAEH,eAAO,MAAM,WAAW,2GAEtB,CAAC;AAEH,eAAO,MAAM,YAAY,6GAEvB,CAAC;AAEH,eAAO,MAAM,KAAK,8FAEhB,CAAC;AAEH,eAAO,MAAM,UAAU,yGAErB,CAAC;AAEH,eAAO,MAAM,WAAW,2GAEtB,CAAC;AAEH,eAAO,MAAM,WAAW,2GAEtB,CAAC;AAEH,eAAO,MAAM,UAAU,yGAErB,CAAC;AAEH,eAAO,MAAM,WAAW,2GAEtB,CAAC;AAEH,eAAO,MAAM,OAAO,mGAElB,CAAC;AAEH,eAAO,MAAM,QAAQ,sGAEnB,CAAC;AAEH,eAAO,MAAM,SAAS,wGAEpB,CAAC;AAEH,eAAO,MAAM,UAAU,0GAErB,CAAC;AAEH,eAAO,MAAM,QAAQ,uGAEnB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC;AAEH,eAAO,MAAM,MAAM,0GAEjB,CAAC;AAEH,eAAO,MAAM,QAAQ,uGAEnB,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,UAAU,uGAErB,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,IAAI,2FAEf,CAAC;AAEH,eAAO,MAAM,UAAU,uGAErB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC;AAEH,eAAO,MAAM,OAAO,oGAElB,CAAC"}
package/react/index.js CHANGED
@@ -84,6 +84,9 @@ export const Clip = create({
84
84
  export const Overbreath = create({
85
85
  elementClass: (await import("../web-components/text/overbreath.js")).default,
86
86
  });
87
+ export const Text = create({
88
+ elementClass: (await import("../web-components/text/text.js")).default,
89
+ });
87
90
  export const Time = create({
88
91
  elementClass: (await import("../web-components/text/time.js")).default,
89
92
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["react/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AACb,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACtB,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC,CAAC,OAAO;CACjE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC;IAC1B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC,CAAC,OAAO;CACzE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC;IAC3B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC,OAAO;CAC3E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC;IAC3B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC,OAAO;CAC3E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC;IACzB,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC,OAAO;CACvE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;IAC7B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC,OAAO;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC;IAC5B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC,OAAO;CAC7E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC;IAC3B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC,OAAO;CAC3E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC;IACzB,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC,OAAO;CACvE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC;IAChC,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC,OAAO;CAChF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;IACjC,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,0CAA0C,CAAC,CAAC,CAAC,OAAO;CACjF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC;IAC1B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC,CAAC,OAAO;CACzE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;IAC/B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC,OAAO;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC;IAChC,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC,OAAO;CAChF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC;IAChC,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC,OAAO;CAChF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;IAC/B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC,OAAO;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC;IAChC,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC,OAAO;CAChF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC;IAC5B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC,OAAO;CAC5E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;IAC7B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,uCAAuC,CAAC,CAAC,CAAC,OAAO;CAC9E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC;IAC9B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC,OAAO;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;IAC/B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC,OAAO;CAChF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;IAC7B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC,OAAO;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC;IAC5B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC,OAAO;CAC7E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC;IAC3B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC,OAAO;CAC3E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;IAC7B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC,OAAO;CAC/E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC;IACzB,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC,OAAO;CACvE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC;IACzB,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC,OAAO;CACvE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;IAC/B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC,OAAO;CAC7E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC;IACzB,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC,OAAO;CACvE,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;IAC/B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC,OAAO;CAC7E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC;IAC5B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC,OAAO;CAC7E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC;IAC5B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC,OAAO;CAC7E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC;IAC5B,YAAY,EAAE,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC,OAAO;CAC7E,CAAC,CAAC","sourcesContent":["\"use client\";\nimport { create } from \"./create.js\";\n\nexport const A = create({\n elementClass: (await import(\"../web-components/a/a.js\")).default,\n});\n\nexport const Alert = create({\n elementClass: (await import(\"../web-components/alert/alert.js\")).default,\n});\n\nexport const Avatar = create({\n elementClass: (await import(\"../web-components/avatar/avatar.js\")).default,\n});\n\nexport const Button = create({\n elementClass: (await import(\"../web-components/button/button.js\")).default,\n});\n\nexport const Card = create({\n elementClass: (await import(\"../web-components/card/card.js\")).default,\n});\n\nexport const Carousel = create({\n elementClass: (await import(\"../web-components/carousel/carousel.js\")).default,\n});\n\nexport const Details = create({\n elementClass: (await import(\"../web-components/details/details.js\")).default,\n});\n\nexport const Dialog = create({\n elementClass: (await import(\"../web-components/dialog/dialog.js\")).default,\n});\n\nexport const Form = create({\n elementClass: (await import(\"../web-components/form/form.js\")).default,\n});\n\nexport const AvatarGroup = create({\n elementClass: (await import(\"../web-components/group/avatar-group.js\")).default,\n});\n\nexport const DetailsGroup = create({\n elementClass: (await import(\"../web-components/group/details-group.js\")).default,\n});\n\nexport const Input = create({\n elementClass: (await import(\"../web-components/input/input.js\")).default,\n});\n\nexport const LabelInput = create({\n elementClass: (await import(\"../web-components/input/label-input.js\")).default,\n});\n\nexport const SearchInput = create({\n elementClass: (await import(\"../web-components/input/search-input.js\")).default,\n});\n\nexport const SelectInput = create({\n elementClass: (await import(\"../web-components/input/select-input.js\")).default,\n});\n\nexport const SplitInput = create({\n elementClass: (await import(\"../web-components/input/split-input.js\")).default,\n});\n\nexport const SwitchInput = create({\n elementClass: (await import(\"../web-components/input/switch-input.js\")).default,\n});\n\nexport const Divider = create({\n elementClass: (await import(\"../web-components/layout/divider.js\")).default,\n});\n\nexport const FlexFlow = create({\n elementClass: (await import(\"../web-components/layout/flex-flow.js\")).default,\n});\n\nexport const NavLayout = create({\n elementClass: (await import(\"../web-components/layout/nav-layout.js\")).default,\n});\n\nexport const OpenOffset = create({\n elementClass: (await import(\"../web-components/offset/open-offset.js\")).default,\n});\n\nexport const Progress = create({\n elementClass: (await import(\"../web-components/progress/progress.js\")).default,\n});\n\nexport const RouterA = create({\n elementClass: (await import(\"../web-components/router/router-a.js\")).default,\n});\n\nexport const Router = create({\n elementClass: (await import(\"../web-components/router/router.js\")).default,\n});\n\nexport const Skeleton = create({\n elementClass: (await import(\"../web-components/skeleton/skeleton.js\")).default,\n});\n\nexport const Tabs = create({\n elementClass: (await import(\"../web-components/tabs/tabs.js\")).default,\n});\n\nexport const Clip = create({\n elementClass: (await import(\"../web-components/text/clip.js\")).default,\n});\n\nexport const Overbreath = create({\n elementClass: (await import(\"../web-components/text/overbreath.js\")).default,\n});\n\nexport const Time = create({\n elementClass: (await import(\"../web-components/text/time.js\")).default,\n});\n\nexport const Typewriter = create({\n elementClass: (await import(\"../web-components/text/typewriter.js\")).default,\n});\n\nexport const Tooltip = create({\n elementClass: (await import(\"../web-components/tooltip/tooltip.js\")).default,\n});\n\nexport const Dragbox = create({\n elementClass: (await import(\"../web-components/wrapper/dragbox.js\")).default,\n});\n\nexport const Wrapper = create({\n elementClass: (await import(\"../web-components/wrapper/wrapper.js\")).default,\n});\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["react/index.ts"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\nimport { create } from \"./create.js\";\n\nexport const A = create({\n elementClass: (await import(\"../web-components/a/a.js\")).default,\n});\n\nexport const Alert = create({\n elementClass: (await import(\"../web-components/alert/alert.js\")).default,\n});\n\nexport const Avatar = create({\n elementClass: (await import(\"../web-components/avatar/avatar.js\")).default,\n});\n\nexport const Button = create({\n elementClass: (await import(\"../web-components/button/button.js\")).default,\n});\n\nexport const Card = create({\n elementClass: (await import(\"../web-components/card/card.js\")).default,\n});\n\nexport const Carousel = create({\n elementClass: (await import(\"../web-components/carousel/carousel.js\")).default,\n});\n\nexport const Details = create({\n elementClass: (await import(\"../web-components/details/details.js\")).default,\n});\n\nexport const Dialog = create({\n elementClass: (await import(\"../web-components/dialog/dialog.js\")).default,\n});\n\nexport const Form = create({\n elementClass: (await import(\"../web-components/form/form.js\")).default,\n});\n\nexport const AvatarGroup = create({\n elementClass: (await import(\"../web-components/group/avatar-group.js\")).default,\n});\n\nexport const DetailsGroup = create({\n elementClass: (await import(\"../web-components/group/details-group.js\")).default,\n});\n\nexport const Input = create({\n elementClass: (await import(\"../web-components/input/input.js\")).default,\n});\n\nexport const LabelInput = create({\n elementClass: (await import(\"../web-components/input/label-input.js\")).default,\n});\n\nexport const SearchInput = create({\n elementClass: (await import(\"../web-components/input/search-input.js\")).default,\n});\n\nexport const SelectInput = create({\n elementClass: (await import(\"../web-components/input/select-input.js\")).default,\n});\n\nexport const SplitInput = create({\n elementClass: (await import(\"../web-components/input/split-input.js\")).default,\n});\n\nexport const SwitchInput = create({\n elementClass: (await import(\"../web-components/input/switch-input.js\")).default,\n});\n\nexport const Divider = create({\n elementClass: (await import(\"../web-components/layout/divider.js\")).default,\n});\n\nexport const FlexFlow = create({\n elementClass: (await import(\"../web-components/layout/flex-flow.js\")).default,\n});\n\nexport const NavLayout = create({\n elementClass: (await import(\"../web-components/layout/nav-layout.js\")).default,\n});\n\nexport const OpenOffset = create({\n elementClass: (await import(\"../web-components/offset/open-offset.js\")).default,\n});\n\nexport const Progress = create({\n elementClass: (await import(\"../web-components/progress/progress.js\")).default,\n});\n\nexport const RouterA = create({\n elementClass: (await import(\"../web-components/router/router-a.js\")).default,\n});\n\nexport const Router = create({\n elementClass: (await import(\"../web-components/router/router.js\")).default,\n});\n\nexport const Skeleton = create({\n elementClass: (await import(\"../web-components/skeleton/skeleton.js\")).default,\n});\n\nexport const Tabs = create({\n elementClass: (await import(\"../web-components/tabs/tabs.js\")).default,\n});\n\nexport const Clip = create({\n elementClass: (await import(\"../web-components/text/clip.js\")).default,\n});\n\nexport const Overbreath = create({\n elementClass: (await import(\"../web-components/text/overbreath.js\")).default,\n});\n\nexport const Text = create({\n elementClass: (await import(\"../web-components/text/text.js\")).default,\n});\n\nexport const Time = create({\n elementClass: (await import(\"../web-components/text/time.js\")).default,\n});\n\nexport const Typewriter = create({\n elementClass: (await import(\"../web-components/text/typewriter.js\")).default,\n});\n\nexport const Tooltip = create({\n elementClass: (await import(\"../web-components/tooltip/tooltip.js\")).default,\n});\n\nexport const Dragbox = create({\n elementClass: (await import(\"../web-components/wrapper/dragbox.js\")).default,\n});\n\nexport const Wrapper = create({\n elementClass: (await import(\"../web-components/wrapper/wrapper.js\")).default,\n});\n"]}
package/text.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export { default } from "./web-components/text/text.js";
2
+ //# sourceMappingURL=text.d.ts.map
package/text.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC"}
package/text.js ADDED
@@ -0,0 +1,2 @@
1
+ export { default } from "./web-components/text/text.js";
2
+ //# sourceMappingURL=text.js.map
package/text.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC","sourcesContent":["export { default } from \"./web-components/text/text.js\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/button/button.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAe,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAYlE,QAAA,MAAM,MAAM;;;;;;;;CA2CX,CAAC;AAEF,KAAK,MAAM,GAAG,MAAM,OAAO,MAAM,CAAC;AAElC;;;;GAIG;AACH,qBACa,MAAO,SAAQ,aAAa;IACvC;;OAEG;IACyC,QAAQ,UAAS;IAC7D;;OAEG;IACyC,KAAK,UAAS;IAC1D;;OAEG;IACyC,MAAM,UAAS;IAC3D;;OAEG;IACyC,MAAM,UAAS;IAC3D;;OAEG;IACS,KAAK,EAAE,MAAM,GAAG,MAAM,CAAW;IAC7C;;OAEG;IACS,IAAI,SAAM;IAEV,EAAE,EAAE,WAAW,CAAC;IACd,IAAI,EAAE,iBAAiB,CAAC;IAEtC,MAAM,CAAC,MAAM,4BAmHX;IAEF,SAAS,CAAC,MAAM,IAAI,YAAY;IAShC,KAAK;IAOL,IAAI;IAIJ,SAAS,CAAC,YAAY;IAItB,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU;IAgBpC,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU;IAYpC;;;;;;;;;;;;;;;OAeG;IACH,SAAS,IAAI,MAAM,GAAG,MAAM;CAG7B;AAED,eAAe,MAAM,CAAC;AAEtB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,MAAM,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;KACpB;CACF"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/button/button.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAe,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAalE,QAAA,MAAM,MAAM;;;;;;;;CA2CX,CAAC;AAEF,KAAK,MAAM,GAAG,MAAM,OAAO,MAAM,CAAC;AAElC;;;;GAIG;AACH,qBACa,MAAO,SAAQ,aAAa;IACvC;;OAEG;IACyC,QAAQ,UAAS;IAC7D;;OAEG;IACyC,KAAK,UAAS;IAC1D;;OAEG;IACyC,MAAM,UAAS;IAC3D;;OAEG;IACyC,MAAM,UAAS;IAC3D;;OAEG;IACS,KAAK,EAAE,MAAM,GAAG,MAAM,CAAW;IAC7C;;OAEG;IACS,IAAI,SAAM;IAEV,EAAE,EAAE,WAAW,CAAC;IACd,IAAI,EAAE,iBAAiB,CAAC;IAEtC,MAAM,CAAC,MAAM,4BAoHX;IAEF,SAAS,CAAC,MAAM,IAAI,YAAY;IAShC,KAAK;IAOL,IAAI;IAIJ,SAAS,CAAC,YAAY;IAItB,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU;IAgBpC,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU;IAYpC;;;;;;;;;;;;;;;OAeG;IACH,SAAS,IAAI,MAAM,GAAG,MAAM;CAG7B;AAED,eAAe,MAAM,CAAC;AAEtB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,MAAM,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;KACpB;CACF"}
@@ -11,47 +11,48 @@ const shadow2 = "2px -2px 5px -2px";
11
11
  const linearGradient = "linear-gradient";
12
12
  const fff = "#fff";
13
13
  const _000 = "#000";
14
+ const deg = `var(${cssvarScope}--deg)`;
14
15
  const vars = ["color", "background", "box-shadow", "ghost-color"];
15
16
  const colors = {
16
17
  black: [
17
18
  fff, //
18
- `${linearGradient}(45deg, rgb(30 30 30), rgb(65 65 65))`,
19
+ `${linearGradient}(${deg}, rgb(30 30 30), rgb(65 65 65))`,
19
20
  `${shadow1} rgb(0 0 0 / 20%), ${shadow2} rgb(99 99 99 / 20%)`,
20
21
  "rgb(22 20 20)",
21
22
  ],
22
23
  gary: [
23
24
  fff, //
24
- `${linearGradient}(45deg, rgb(65 65 65), rgb(100 100 100))`,
25
+ `${linearGradient}(${deg}, rgb(65 65 65), rgb(100 100 100))`,
25
26
  `${shadow1} rgb(0 0 0 / 20%), ${shadow2} rgb(99 99 99 / 20%)`,
26
27
  "rgb(56 56 56)",
27
28
  ],
28
29
  white: [
29
30
  _000, //
30
- `${linearGradient}(45deg, rgb(225 225 225), rgb(240 240 240))`,
31
+ `${linearGradient}(${deg}, rgb(225 225 225), rgb(240 240 240))`,
31
32
  `${shadow1} rgb(255 255 255 / 20%), ${shadow2} rgb(165 165 165 / 20%)`,
32
33
  "rgb(212 212 212)",
33
34
  ],
34
35
  red: [
35
36
  fff, //
36
- `${linearGradient}(45deg, rgb(215 57 68), rgb(250 141 106))`,
37
+ `${linearGradient}(${deg}, rgb(215 57 68), rgb(250 141 106))`,
37
38
  `${shadow1} rgb(181 35 44 / 20%), ${shadow2} rgb(234 130 174 / 20%)`,
38
39
  "rgb(214 11 23)",
39
40
  ],
40
41
  green: [
41
42
  _000, //
42
- `${linearGradient}(45deg, rgb(21 206 71), rgb(99 253 122))`,
43
+ `${linearGradient}(${deg}, rgb(21 206 71), rgb(99 253 122))`,
43
44
  `${shadow1} rgb(63 179 69 / 20%), ${shadow2} rgb(136 225 142 / 20%)`,
44
45
  "rgb(60 214 68)",
45
46
  ],
46
47
  blue: [
47
48
  fff, //
48
- `${linearGradient}(45deg, rgb(14 143 255), rgb(121 211 255))`,
49
+ `${linearGradient}(${deg}, rgb(14 143 255), rgb(121 211 255))`,
49
50
  `${shadow1} rgb(92 182 255 / 20%), ${shadow2} rgb(135 232 222 / 20%)`,
50
51
  "rgb(42 141 221)",
51
52
  ],
52
53
  yellow: [
53
54
  _000, //
54
- `${linearGradient}(45deg, rgb(255 190 54), rgb(255 249 68))`,
55
+ `${linearGradient}(${deg}, rgb(255 190 54), rgb(255 249 68))`,
55
56
  `${shadow1} rgb(214 203 55 / 20%), ${shadow2} rgb(202 203 137 / 20%)`,
56
57
  "rgb(255 235 59)",
57
58
  ],
@@ -160,8 +161,8 @@ Button.styles = [
160
161
  unsafeCSS(constructCSS(vars, colors, (raw) => `[color=${raw}]`, (k, v) => `${cssvarScope}--${k}:${v}`)),
161
162
  css `
162
163
  :host {
163
- ${cssvarScope}--padding: .075em .25em;
164
- ${cssvarScope}--deg: .075em .25em;
164
+ ${cssvarScope}--padding: .05em .25em;
165
+ ${cssvarScope}--deg: 45deg;
165
166
  ${cssvarScope}--ghost-width: .09em;
166
167
  ${cssvarScope}--modal-opacity: .15;
167
168
  ${cssvarScope}--modal-opacity-end: 0;
@@ -179,7 +180,7 @@ Button.styles = [
179
180
  cursor: not-allowed;
180
181
  }
181
182
 
182
- :host(:active) div {
183
+ :host(:active) {
183
184
  scale: var(${cssvarScope}--focus-scale);
184
185
  }
185
186
 
@@ -195,6 +196,7 @@ Button.styles = [
195
196
  transition-duration: inherit;
196
197
  transition-property: scale;
197
198
  pointer-events: none;
199
+ box-sizing: border-box;
198
200
  }
199
201
 
200
202
  b {
@@ -208,7 +210,7 @@ Button.styles = [
208
210
  padding: var(${cssvarScope}--padding);
209
211
  margin: 0;
210
212
  user-select: none;
211
- transition: 0;
213
+ transition: none;
212
214
  }
213
215
 
214
216
  :host([ghost]) p {
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/button/button.ts"],"names":[],"mappings":"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","sourcesContent":["import { css, html, property, query, unsafeCSS } from \"../../.deps.js\";\nimport { define } from \"../../decorators/define.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { constructCSS } from \"../../lib/utils.js\";\nimport { createScope, GodownElement } from \"../../supers/root.js\";\n\nconst defineName = \"button\";\nconst cssvarScope = createScope(defineName);\n\nconst shadow1 = \"-2px 2px 5px -2px\";\nconst shadow2 = \"2px -2px 5px -2px\";\nconst linearGradient = \"linear-gradient\";\nconst fff = \"#fff\";\nconst _000 = \"#000\";\n\nconst vars = [\"color\", \"background\", \"box-shadow\", \"ghost-color\"];\nconst colors = {\n black: [\n fff, //\n `${linearGradient}(45deg, rgb(30 30 30), rgb(65 65 65))`,\n `${shadow1} rgb(0 0 0 / 20%), ${shadow2} rgb(99 99 99 / 20%)`,\n \"rgb(22 20 20)\",\n ],\n gary: [\n fff, //\n `${linearGradient}(45deg, rgb(65 65 65), rgb(100 100 100))`,\n `${shadow1} rgb(0 0 0 / 20%), ${shadow2} rgb(99 99 99 / 20%)`,\n \"rgb(56 56 56)\",\n ],\n white: [\n _000, //\n `${linearGradient}(45deg, rgb(225 225 225), rgb(240 240 240))`,\n `${shadow1} rgb(255 255 255 / 20%), ${shadow2} rgb(165 165 165 / 20%)`,\n \"rgb(212 212 212)\",\n ],\n red: [\n fff, //\n `${linearGradient}(45deg, rgb(215 57 68), rgb(250 141 106))`,\n `${shadow1} rgb(181 35 44 / 20%), ${shadow2} rgb(234 130 174 / 20%)`,\n \"rgb(214 11 23)\",\n ],\n green: [\n _000, //\n `${linearGradient}(45deg, rgb(21 206 71), rgb(99 253 122))`,\n `${shadow1} rgb(63 179 69 / 20%), ${shadow2} rgb(136 225 142 / 20%)`,\n \"rgb(60 214 68)\",\n ],\n blue: [\n fff, //\n `${linearGradient}(45deg, rgb(14 143 255), rgb(121 211 255))`,\n `${shadow1} rgb(92 182 255 / 20%), ${shadow2} rgb(135 232 222 / 20%)`,\n \"rgb(42 141 221)\",\n ],\n yellow: [\n _000, //\n `${linearGradient}(45deg, rgb(255 190 54), rgb(255 249 68))`,\n `${shadow1} rgb(214 203 55 / 20%), ${shadow2} rgb(202 203 137 / 20%)`,\n \"rgb(255 235 59)\",\n ],\n};\n\ntype Colors = keyof typeof colors;\n\n/**\n * {@linkcode Button}.\n *\n * Inspired by Next-ui.\n */\n@define(defineName)\nexport class Button extends GodownElement {\n /**\n * Whether to disable this element.\n */\n @property({ type: Boolean, reflect: true }) disabled = false;\n /**\n * Invert font and background color.\n */\n @property({ type: Boolean, reflect: true }) ghost = false;\n /**\n * Whether this element is active or not.\n */\n @property({ type: Boolean, reflect: true }) active = false;\n /**\n * Enables rounded corners to appear capsule shaped.\n */\n @property({ type: Boolean, reflect: true }) radius = false;\n /**\n * The primary color.\n */\n @property() color: \"none\" | Colors = \"black\";\n /**\n * Text inside.\n */\n @property() text = \"\";\n\n @query(\"b\") _b: HTMLElement;\n @query(\"div\") _div: HTMLButtonElement;\n\n static styles = [\n unsafeCSS(\n constructCSS(\n vars,\n colors,\n (raw) => `[color=${raw}]`,\n (k, v) => `${cssvarScope}--${k}:${v}`,\n ),\n ),\n css`\n :host {\n ${cssvarScope}--padding: .075em .25em;\n ${cssvarScope}--deg: .075em .25em;\n ${cssvarScope}--ghost-width: .09em;\n ${cssvarScope}--modal-opacity: .15;\n ${cssvarScope}--modal-opacity-end: 0;\n ${cssvarScope}--modal-animation-duration: 1s;\n ${cssvarScope}--focus-scale: .975;\n transition: 0.1s;\n display: flex;\n width: fit-content;\n border-radius: 0.25em;\n cursor: pointer;\n background: none !important;\n }\n\n :host([disabled]) {\n cursor: not-allowed;\n }\n\n :host(:active) div {\n scale: var(${cssvarScope}--focus-scale);\n }\n\n div {\n background: var(${cssvarScope}--background);\n box-shadow: var(${cssvarScope}--box-shadow);\n color: var(${cssvarScope}--color, inherit);\n width: 100%;\n height: 100%;\n position: relative;\n overflow: hidden;\n border-radius: inherit;\n transition-duration: inherit;\n transition-property: scale;\n pointer-events: none;\n }\n\n b {\n pointer-events: none;\n transform: translate(-50%, -50%);\n position: absolute;\n visibility: hidden;\n }\n\n p {\n padding: var(${cssvarScope}--padding);\n margin: 0;\n user-select: none;\n transition: 0;\n }\n\n :host([ghost]) p {\n background-image: var(${cssvarScope}--background);\n margin: calc(-1 * var(${cssvarScope}--ghost-width));\n background-clip: text;\n -webkit-background-clip: text;\n color: transparent;\n }\n\n :host([ghost]) div {\n background: transparent;\n border: var(${cssvarScope}--ghost-width) solid var(${cssvarScope}--ghost-color);\n }\n\n :host([radius]) {\n border-radius: calc(infinity * 1px);\n ${cssvarScope}--padding: .075em .5em;\n }\n `,\n css`\n i {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n border-radius: 50%;\n transform: translate(0, 0);\n background: currentColor;\n opacity: var(${cssvarScope}--modal-opacity-end);\n visibility: visible;\n animation-duration: min(var(${cssvarScope}--modal-animation-duration), 2s);\n }\n\n :host([ghost]) i {\n background: var(${cssvarScope}--ghost-color);\n }\n\n @keyframes i {\n 0% {\n transform: scale(0);\n opacity: var(${cssvarScope}--modal-opacity);\n }\n 80% {\n transform: scale(1);\n }\n 100% {\n opacity: var(${cssvarScope}--modal-opacity-end);\n }\n }\n `,\n ];\n\n protected render(): HTMLTemplate {\n return html`\n <div color=\"${this.nextColor()}\">\n <b></b>\n <p>${this.text || htmlSlot()}</p>\n </div>\n `;\n }\n\n focus() {\n if (this.disabled) {\n return;\n }\n this.active = true;\n }\n\n blur() {\n this.active = false;\n }\n\n protected firstUpdated() {\n this.addEvent(document, \"click\", this._handelClick.bind(this));\n }\n\n protected _handleModal(e: MouseEvent) {\n const a = this._div.offsetHeight + 1;\n const b = this._div.offsetWidth + 1;\n const size = `${Math.sqrt(a * a + b * b) * 2}px`;\n const translate = `translate(calc(-50% + ${e.offsetX}px), calc(-50% + ${e.offsetY}px))`;\n this._b.style.width = size;\n this._b.style.height = size;\n this._b.style.transform = translate;\n const i = document.createElement(\"i\");\n i.style.animationName = \"i\";\n this._b.appendChild(i);\n setTimeout(() => {\n i.remove();\n }, 2000);\n }\n\n protected _handelClick(e: MouseEvent) {\n if (this.disabled) {\n return;\n }\n if (e.target === this) {\n this._handleModal(e);\n this.focus();\n } else {\n this.blur();\n }\n }\n\n /**\n * Get the color to render, default is this.color.\n *\n * @returns New color.\n *\n * Colors can be set for different states.\n *\n * The matching selector is `[color=COLOR]`.\n *\n * @example\n * ```ts\n * button.adoptStyles(\"[color=COLOR1]{...}\")\n * button.adoptStyles(\"[color=COLOR2]{...}\")\n * button.nextColor = () => state ? COLOR1 : COLOR2\n * ```\n */\n nextColor(): Colors | string {\n return this.color;\n }\n}\n\nexport default Button;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"base-button\": Button;\n \"g-button\": Button;\n }\n}\n"]}
1
+ {"version":3,"file":"button.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/button/button.ts"],"names":[],"mappings":"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","sourcesContent":["import { css, html, property, query, unsafeCSS } from \"../../.deps.js\";\nimport { define } from \"../../decorators/define.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { constructCSS } from \"../../lib/utils.js\";\nimport { createScope, GodownElement } from \"../../supers/root.js\";\n\nconst defineName = \"button\";\nconst cssvarScope = createScope(defineName);\n\nconst shadow1 = \"-2px 2px 5px -2px\";\nconst shadow2 = \"2px -2px 5px -2px\";\nconst linearGradient = \"linear-gradient\";\nconst fff = \"#fff\";\nconst _000 = \"#000\";\nconst deg = `var(${cssvarScope}--deg)`;\n\nconst vars = [\"color\", \"background\", \"box-shadow\", \"ghost-color\"];\nconst colors = {\n black: [\n fff, //\n `${linearGradient}(${deg}, rgb(30 30 30), rgb(65 65 65))`,\n `${shadow1} rgb(0 0 0 / 20%), ${shadow2} rgb(99 99 99 / 20%)`,\n \"rgb(22 20 20)\",\n ],\n gary: [\n fff, //\n `${linearGradient}(${deg}, rgb(65 65 65), rgb(100 100 100))`,\n `${shadow1} rgb(0 0 0 / 20%), ${shadow2} rgb(99 99 99 / 20%)`,\n \"rgb(56 56 56)\",\n ],\n white: [\n _000, //\n `${linearGradient}(${deg}, rgb(225 225 225), rgb(240 240 240))`,\n `${shadow1} rgb(255 255 255 / 20%), ${shadow2} rgb(165 165 165 / 20%)`,\n \"rgb(212 212 212)\",\n ],\n red: [\n fff, //\n `${linearGradient}(${deg}, rgb(215 57 68), rgb(250 141 106))`,\n `${shadow1} rgb(181 35 44 / 20%), ${shadow2} rgb(234 130 174 / 20%)`,\n \"rgb(214 11 23)\",\n ],\n green: [\n _000, //\n `${linearGradient}(${deg}, rgb(21 206 71), rgb(99 253 122))`,\n `${shadow1} rgb(63 179 69 / 20%), ${shadow2} rgb(136 225 142 / 20%)`,\n \"rgb(60 214 68)\",\n ],\n blue: [\n fff, //\n `${linearGradient}(${deg}, rgb(14 143 255), rgb(121 211 255))`,\n `${shadow1} rgb(92 182 255 / 20%), ${shadow2} rgb(135 232 222 / 20%)`,\n \"rgb(42 141 221)\",\n ],\n yellow: [\n _000, //\n `${linearGradient}(${deg}, rgb(255 190 54), rgb(255 249 68))`,\n `${shadow1} rgb(214 203 55 / 20%), ${shadow2} rgb(202 203 137 / 20%)`,\n \"rgb(255 235 59)\",\n ],\n};\n\ntype Colors = keyof typeof colors;\n\n/**\n * {@linkcode Button}.\n *\n * Inspired by Next-ui.\n */\n@define(defineName)\nexport class Button extends GodownElement {\n /**\n * Whether to disable this element.\n */\n @property({ type: Boolean, reflect: true }) disabled = false;\n /**\n * Invert font and background color.\n */\n @property({ type: Boolean, reflect: true }) ghost = false;\n /**\n * Whether this element is active or not.\n */\n @property({ type: Boolean, reflect: true }) active = false;\n /**\n * Enables rounded corners to appear capsule shaped.\n */\n @property({ type: Boolean, reflect: true }) radius = false;\n /**\n * The primary color.\n */\n @property() color: \"none\" | Colors = \"black\";\n /**\n * Text inside.\n */\n @property() text = \"\";\n\n @query(\"b\") _b: HTMLElement;\n @query(\"div\") _div: HTMLButtonElement;\n\n static styles = [\n unsafeCSS(\n constructCSS(\n vars,\n colors,\n (raw) => `[color=${raw}]`,\n (k, v) => `${cssvarScope}--${k}:${v}`,\n ),\n ),\n css`\n :host {\n ${cssvarScope}--padding: .05em .25em;\n ${cssvarScope}--deg: 45deg;\n ${cssvarScope}--ghost-width: .09em;\n ${cssvarScope}--modal-opacity: .15;\n ${cssvarScope}--modal-opacity-end: 0;\n ${cssvarScope}--modal-animation-duration: 1s;\n ${cssvarScope}--focus-scale: .975;\n transition: 0.1s;\n display: flex;\n width: fit-content;\n border-radius: 0.25em;\n cursor: pointer;\n background: none !important;\n }\n\n :host([disabled]) {\n cursor: not-allowed;\n }\n\n :host(:active) {\n scale: var(${cssvarScope}--focus-scale);\n }\n\n div {\n background: var(${cssvarScope}--background);\n box-shadow: var(${cssvarScope}--box-shadow);\n color: var(${cssvarScope}--color, inherit);\n width: 100%;\n height: 100%;\n position: relative;\n overflow: hidden;\n border-radius: inherit;\n transition-duration: inherit;\n transition-property: scale;\n pointer-events: none;\n box-sizing: border-box;\n }\n\n b {\n pointer-events: none;\n transform: translate(-50%, -50%);\n position: absolute;\n visibility: hidden;\n }\n\n p {\n padding: var(${cssvarScope}--padding);\n margin: 0;\n user-select: none;\n transition: none;\n }\n\n :host([ghost]) p {\n background-image: var(${cssvarScope}--background);\n margin: calc(-1 * var(${cssvarScope}--ghost-width));\n background-clip: text;\n -webkit-background-clip: text;\n color: transparent;\n }\n\n :host([ghost]) div {\n background: transparent;\n border: var(${cssvarScope}--ghost-width) solid var(${cssvarScope}--ghost-color);\n }\n\n :host([radius]) {\n border-radius: calc(infinity * 1px);\n ${cssvarScope}--padding: .075em .5em;\n }\n `,\n css`\n i {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n border-radius: 50%;\n transform: translate(0, 0);\n background: currentColor;\n opacity: var(${cssvarScope}--modal-opacity-end);\n visibility: visible;\n animation-duration: min(var(${cssvarScope}--modal-animation-duration), 2s);\n }\n\n :host([ghost]) i {\n background: var(${cssvarScope}--ghost-color);\n }\n\n @keyframes i {\n 0% {\n transform: scale(0);\n opacity: var(${cssvarScope}--modal-opacity);\n }\n 80% {\n transform: scale(1);\n }\n 100% {\n opacity: var(${cssvarScope}--modal-opacity-end);\n }\n }\n `,\n ];\n\n protected render(): HTMLTemplate {\n return html`\n <div color=\"${this.nextColor()}\">\n <b></b>\n <p>${this.text || htmlSlot()}</p>\n </div>\n `;\n }\n\n focus() {\n if (this.disabled) {\n return;\n }\n this.active = true;\n }\n\n blur() {\n this.active = false;\n }\n\n protected firstUpdated() {\n this.addEvent(document, \"click\", this._handelClick.bind(this));\n }\n\n protected _handleModal(e: MouseEvent) {\n const a = this._div.offsetHeight + 1;\n const b = this._div.offsetWidth + 1;\n const size = `${Math.sqrt(a * a + b * b) * 2}px`;\n const translate = `translate(calc(-50% + ${e.offsetX}px), calc(-50% + ${e.offsetY}px))`;\n this._b.style.width = size;\n this._b.style.height = size;\n this._b.style.transform = translate;\n const i = document.createElement(\"i\");\n i.style.animationName = \"i\";\n this._b.appendChild(i);\n setTimeout(() => {\n i.remove();\n }, 2000);\n }\n\n protected _handelClick(e: MouseEvent) {\n if (this.disabled) {\n return;\n }\n if (e.target === this) {\n this._handleModal(e);\n this.focus();\n } else {\n this.blur();\n }\n }\n\n /**\n * Get the color to render, default is this.color.\n *\n * @returns New color.\n *\n * Colors can be set for different states.\n *\n * The matching selector is `[color=COLOR]`.\n *\n * @example\n * ```ts\n * button.adoptStyles(\"[color=COLOR1]{...}\")\n * button.adoptStyles(\"[color=COLOR2]{...}\")\n * button.nextColor = () => state ? COLOR1 : COLOR2\n * ```\n */\n nextColor(): Colors | string {\n return this.color;\n }\n}\n\nexport default Button;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"base-button\": Button;\n \"g-button\": Button;\n }\n}\n"]}
@@ -26,6 +26,7 @@ export { Skeleton } from "./skeleton/skeleton.js";
26
26
  export { Tabs } from "./tabs/tabs.js";
27
27
  export { Clip } from "./text/clip.js";
28
28
  export { Overbreath } from "./text/overbreath.js";
29
+ export { Text } from "./text/text.js";
29
30
  export { Time } from "./text/time.js";
30
31
  export { Typewriter } from "./text/typewriter.js";
31
32
  export { Tooltip } from "./tooltip/tooltip.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC"}
@@ -26,6 +26,7 @@ export { Skeleton } from "./skeleton/skeleton.js";
26
26
  export { Tabs } from "./tabs/tabs.js";
27
27
  export { Clip } from "./text/clip.js";
28
28
  export { Overbreath } from "./text/overbreath.js";
29
+ export { Text } from "./text/text.js";
29
30
  export { Time } from "./text/time.js";
30
31
  export { Typewriter } from "./text/typewriter.js";
31
32
  export { Tooltip } from "./tooltip/tooltip.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC","sourcesContent":["export { A } from \"./a/a.js\";\nexport { Alert } from \"./alert/alert.js\";\nexport { Avatar } from \"./avatar/avatar.js\";\nexport { Button } from \"./button/button.js\";\nexport { Card } from \"./card/card.js\";\nexport { Carousel } from \"./carousel/carousel.js\";\nexport { Details } from \"./details/details.js\";\nexport { Dialog } from \"./dialog/dialog.js\";\nexport { Form } from \"./form/form.js\";\nexport { AvatarGroup } from \"./group/avatar-group.js\";\nexport { DetailsGroup } from \"./group/details-group.js\";\nexport { Input } from \"./input/input.js\";\nexport { LabelInput } from \"./input/label-input.js\";\nexport { SearchInput } from \"./input/search-input.js\";\nexport { SelectInput } from \"./input/select-input.js\";\nexport { SplitInput } from \"./input/split-input.js\";\nexport { SwitchInput } from \"./input/switch-input.js\";\nexport { Divider } from \"./layout/divider.js\";\nexport { FlexFlow } from \"./layout/flex-flow.js\";\nexport { NavLayout } from \"./layout/nav-layout.js\";\nexport { OpenOffset } from \"./offset/open-offset.js\";\nexport { Progress } from \"./progress/progress.js\";\nexport { RouterA } from \"./router/router-a.js\";\nexport { Router } from \"./router/router.js\";\nexport { Skeleton } from \"./skeleton/skeleton.js\";\nexport { Tabs } from \"./tabs/tabs.js\";\nexport { Clip } from \"./text/clip.js\";\nexport { Overbreath } from \"./text/overbreath.js\";\nexport { Time } from \"./text/time.js\";\nexport { Typewriter } from \"./text/typewriter.js\";\nexport { Tooltip } from \"./tooltip/tooltip.js\";\nexport { Dragbox } from \"./wrapper/dragbox.js\";\nexport { Wrapper } from \"./wrapper/wrapper.js\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC","sourcesContent":["export { A } from \"./a/a.js\";\nexport { Alert } from \"./alert/alert.js\";\nexport { Avatar } from \"./avatar/avatar.js\";\nexport { Button } from \"./button/button.js\";\nexport { Card } from \"./card/card.js\";\nexport { Carousel } from \"./carousel/carousel.js\";\nexport { Details } from \"./details/details.js\";\nexport { Dialog } from \"./dialog/dialog.js\";\nexport { Form } from \"./form/form.js\";\nexport { AvatarGroup } from \"./group/avatar-group.js\";\nexport { DetailsGroup } from \"./group/details-group.js\";\nexport { Input } from \"./input/input.js\";\nexport { LabelInput } from \"./input/label-input.js\";\nexport { SearchInput } from \"./input/search-input.js\";\nexport { SelectInput } from \"./input/select-input.js\";\nexport { SplitInput } from \"./input/split-input.js\";\nexport { SwitchInput } from \"./input/switch-input.js\";\nexport { Divider } from \"./layout/divider.js\";\nexport { FlexFlow } from \"./layout/flex-flow.js\";\nexport { NavLayout } from \"./layout/nav-layout.js\";\nexport { OpenOffset } from \"./offset/open-offset.js\";\nexport { Progress } from \"./progress/progress.js\";\nexport { RouterA } from \"./router/router-a.js\";\nexport { Router } from \"./router/router.js\";\nexport { Skeleton } from \"./skeleton/skeleton.js\";\nexport { Tabs } from \"./tabs/tabs.js\";\nexport { Clip } from \"./text/clip.js\";\nexport { Overbreath } from \"./text/overbreath.js\";\nexport { Text } from \"./text/text.js\";\nexport { Time } from \"./text/time.js\";\nexport { Typewriter } from \"./text/typewriter.js\";\nexport { Tooltip } from \"./tooltip/tooltip.js\";\nexport { Dragbox } from \"./wrapper/dragbox.js\";\nexport { Wrapper } from \"./wrapper/wrapper.js\";\n"]}
@@ -0,0 +1,30 @@
1
+ import { type CSSResultGroup } from "../../.deps.js";
2
+ import { type HTMLTemplate } from "../../lib/templates.js";
3
+ import { GodownElement } from "../../supers/root.js";
4
+ /**
5
+ * {@linkcode Text } renders nowrap text.
6
+ */
7
+ export declare class Text extends GodownElement {
8
+ /**
9
+ * Underline behavior.
10
+ */
11
+ underline: "none" | "hover" | "active" | "always" | "";
12
+ /**
13
+ * Text format.
14
+ */
15
+ case: "upper" | "lower" | "dash" | "camel" | "raw" | "";
16
+ /**
17
+ * Text.
18
+ */
19
+ text: string;
20
+ static styles: CSSResultGroup;
21
+ protected render(): HTMLTemplate;
22
+ private t;
23
+ }
24
+ export default Text;
25
+ declare global {
26
+ interface HTMLElementTagNameMap {
27
+ "g-text": Text;
28
+ }
29
+ }
30
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,cAAc,EAAkB,MAAM,gBAAgB,CAAC;AAG1E,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAe,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAMlE;;GAEG;AACH,qBACa,IAAK,SAAQ,aAAa;IACrC;;OAEG;IACS,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,EAAE,CAAU;IAC5E;;OAEG;IACS,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,EAAE,CAAM;IACzE;;OAEG;IACS,IAAI,SAAM;IAEtB,MAAM,CAAC,MAAM,EAAE,cAAc,CAuC3B;IAEF,SAAS,CAAC,MAAM,IAAI,YAAY;IAIhC,OAAO,CAAC,CAAC;CAiBV;AAED,eAAe,IAAI,CAAC;AAEpB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,QAAQ,EAAE,IAAI,CAAC;KAChB;CACF"}
@@ -0,0 +1,104 @@
1
+ import { __decorate } from "tslib";
2
+ import { css, html, property } from "../../.deps.js";
3
+ import { define } from "../../decorators/define.js";
4
+ import { ifValue } from "../../lib/directives.js";
5
+ import { htmlSlot } from "../../lib/templates.js";
6
+ import { camelToDash, dashToCamel } from "../../lib/utils.js";
7
+ import { createScope, GodownElement } from "../../supers/root.js";
8
+ const defineName = "text";
9
+ const cssvarScope = createScope(defineName);
10
+ /**
11
+ * {@linkcode Text } renders nowrap text.
12
+ */
13
+ let Text = class Text extends GodownElement {
14
+ constructor() {
15
+ super(...arguments);
16
+ /**
17
+ * Underline behavior.
18
+ */
19
+ this.underline = "none";
20
+ /**
21
+ * Text format.
22
+ */
23
+ this.case = "";
24
+ /**
25
+ * Text.
26
+ */
27
+ this.text = "";
28
+ }
29
+ render() {
30
+ return html `<span class="${this.underline || "always"}">${ifValue(this.text, this.t(), htmlSlot())}</span>`;
31
+ }
32
+ t() {
33
+ const text = this.text;
34
+ switch (this.case) {
35
+ case "upper":
36
+ return text.toUpperCase();
37
+ case "raw":
38
+ return text;
39
+ case "lower":
40
+ return text.toLowerCase();
41
+ case "camel":
42
+ return dashToCamel(text);
43
+ case "dash":
44
+ return camelToDash(text);
45
+ default:
46
+ return text[0].toUpperCase() + text.slice(1);
47
+ }
48
+ }
49
+ };
50
+ Text.styles = [
51
+ GodownElement.styles,
52
+ css `
53
+ :host {
54
+ ${cssvarScope}--color: currentColor;
55
+ ${cssvarScope}--color-hover: currentColor;
56
+ ${cssvarScope}--color-active: currentColor;
57
+ display: inline-block;
58
+ text-overflow: ellipsis;
59
+ overflow-wrap: break-word;
60
+ }
61
+
62
+ span {
63
+ white-space: nowrap;
64
+ display: block;
65
+ text-overflow: inherit;
66
+ overflow-wrap: inherit;
67
+ overflow: hidden;
68
+ color: var(${cssvarScope}--color, inherit);
69
+ }
70
+
71
+ span:hover {
72
+ color: var(${cssvarScope}--color-hover, inherit);
73
+ }
74
+
75
+ span:active {
76
+ color: var(${cssvarScope}--color-active, inherit);
77
+ }
78
+
79
+ .hover:hover,
80
+ .active:active,
81
+ .always {
82
+ text-decoration: underline;
83
+ }
84
+
85
+ .none {
86
+ text-decoration: none;
87
+ }
88
+ `,
89
+ ];
90
+ __decorate([
91
+ property()
92
+ ], Text.prototype, "underline", void 0);
93
+ __decorate([
94
+ property()
95
+ ], Text.prototype, "case", void 0);
96
+ __decorate([
97
+ property()
98
+ ], Text.prototype, "text", void 0);
99
+ Text = __decorate([
100
+ define(defineName)
101
+ ], Text);
102
+ export { Text };
103
+ export default Text;
104
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/text.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,IAAI,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAqB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAElE,MAAM,UAAU,GAAG,MAAM,CAAC;AAE1B,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAE5C;;GAEG;AAEI,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,aAAa;IAAhC;;QACL;;WAEG;QACS,cAAS,GAAgD,MAAM,CAAC;QAC5E;;WAEG;QACS,SAAI,GAAsD,EAAE,CAAC;QACzE;;WAEG;QACS,SAAI,GAAG,EAAE,CAAC;IAgExB,CAAC;IArBW,MAAM;QACd,OAAO,IAAI,CAAA,gBAAgB,IAAI,CAAC,SAAS,IAAI,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC;IAC9G,CAAC;IAEO,CAAC;QACP,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC;YACd,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,KAAK,OAAO;gBACV,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;YAC3B,KAAK,MAAM;gBACT,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;YAC3B;gBACE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;;AA7DM,WAAM,GAAmB;IAC9B,aAAa,CAAC,MAAM;IACpB,GAAG,CAAA;;UAEG,WAAW;UACX,WAAW;UACX,WAAW;;;;;;;;;;;;qBAYA,WAAW;;;;qBAIX,WAAW;;;;qBAIX,WAAW;;;;;;;;;;;;KAY3B;CACF,AAvCY,CAuCX;AAjDU;IAAX,QAAQ,EAAE;uCAAiE;AAIhE;IAAX,QAAQ,EAAE;kCAA8D;AAI7D;IAAX,QAAQ,EAAE;kCAAW;AAZX,IAAI;IADhB,MAAM,CAAC,UAAU,CAAC;GACN,IAAI,CA4EhB;;AAED,eAAe,IAAI,CAAC","sourcesContent":["import { css, type CSSResultGroup, html, property } from \"../../.deps.js\";\nimport { define } from \"../../decorators/define.js\";\nimport { ifValue } from \"../../lib/directives.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { camelToDash, dashToCamel } from \"../../lib/utils.js\";\nimport { createScope, GodownElement } from \"../../supers/root.js\";\n\nconst defineName = \"text\";\n\nconst cssvarScope = createScope(defineName);\n\n/**\n * {@linkcode Text } renders nowrap text.\n */\n@define(defineName)\nexport class Text extends GodownElement {\n /**\n * Underline behavior.\n */\n @property() underline: \"none\" | \"hover\" | \"active\" | \"always\" | \"\" = \"none\";\n /**\n * Text format.\n */\n @property() case: \"upper\" | \"lower\" | \"dash\" | \"camel\" | \"raw\" | \"\" = \"\";\n /**\n * Text.\n */\n @property() text = \"\";\n\n static styles: CSSResultGroup = [\n GodownElement.styles,\n css`\n :host {\n ${cssvarScope}--color: currentColor;\n ${cssvarScope}--color-hover: currentColor;\n ${cssvarScope}--color-active: currentColor;\n display: inline-block;\n text-overflow: ellipsis;\n overflow-wrap: break-word;\n }\n\n span {\n white-space: nowrap;\n display: block;\n text-overflow: inherit;\n overflow-wrap: inherit;\n overflow: hidden;\n color: var(${cssvarScope}--color, inherit);\n }\n\n span:hover {\n color: var(${cssvarScope}--color-hover, inherit);\n }\n\n span:active {\n color: var(${cssvarScope}--color-active, inherit);\n }\n\n .hover:hover,\n .active:active,\n .always {\n text-decoration: underline;\n }\n\n .none {\n text-decoration: none;\n }\n `,\n ];\n\n protected render(): HTMLTemplate {\n return html`<span class=\"${this.underline || \"always\"}\">${ifValue(this.text, this.t(), htmlSlot())}</span>`;\n }\n\n private t() {\n const text = this.text;\n switch (this.case) {\n case \"upper\":\n return text.toUpperCase();\n case \"raw\":\n return text;\n case \"lower\":\n return text.toLowerCase();\n case \"camel\":\n return dashToCamel(text);\n case \"dash\":\n return camelToDash(text);\n default:\n return text[0].toUpperCase() + text.slice(1);\n }\n }\n}\n\nexport default Text;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"g-text\": Text;\n }\n}\n"]}